태그: 성능비교
5편
-
C++ C 배열 vs std::array vs vector: 성능과 안전성 비교
C 스타일 배열, std::array, std::vector를 크기 고정 여부, 스택·힙 배치, 범위 검사 관점에서 비교하고 접근·생성·순회 벤치마크로 성능 차이를 확인합니다. operator[]와 at()의 차이, 함수로 넘길 때 크기 정보가 사라지는 문제도 다룹니다.
-
C++ 함수 객체 vs 람다 vs std::function: operator() 구현과 인라인·성능 차이
operator()를 가진 함수 객체를 기본 문법부터 상태를 가진 functor, map·set용 비교자, unordered_map용 해시 객체까지 예제로 설명합니다. 람다·std::function 대비 functor가 나은 경우와 커스텀 deleter 활용도 다룹니다.
-
C++ vs Go: 성능, 동시성 모델, 프로젝트별 선택 기준
C++로 웹 API를 만들다 개발 속도가 밀리거나 Go로 지연에 민감한 시스템을 만들다 GC가 문제가 되는 선택 실패 사례를 두고 두 언어를 비교합니다. 스레드·이벤트 루프와 고루틴 M:N 스케줄링, 컨텍스트 스위칭 비용, CPU 바운드 성능을 다룹니다.
-
C++ map·unordered_map·flat_map: 성능 비교와 선택 기준
std::map(레드-블랙 트리), unordered_map(해시 테이블), C++23 flat_map의 내부 구조 차이가 검색·삽입 성능에 어떻게 드러나는지 비교합니다. lower_bound 범위 검색, 커스텀 키의 해시 함수, operator[]가 원소를 몰래 만드는 문제와 선택 기준을 다룹니다.
-
C++ nlohmann/json 실전: 파싱·커스텀 타입 직렬화·에러 처리와 자주 틀리는 동작
nlohmann/json으로 JSON을 파싱하고 구조체와 변환하는 방법, operator[]·value()·at()의 차이, 키 순서가 바뀌는 이유와 ordered_json, float→int 무음 변환, SAX 파싱, simdjson·RapidJSON과 고르는 기준까지 정리합니다.