블로그
-
C++ std::optional·std::variant 완벽 가이드 | nullptr 대신 타입 안전하게
C++ nullptr 체크 지겹다. std::optional로 값 유무를, std::variant로 여러 타입 중 하나를 타입 안전하게. has_value, value_or, std::visit, std::get, std::holds_alternative 실전 활용.
-
C++ std::string_view·std::span 완벽 가이드 | 제로카피 뷰·댕글링 방지
C++ std::string_view·std::span 완벽 가이드: 제로카피 뷰·댕글링 방지. 문자열·배열을 넘길 때마다 복사가 부담된다·실무에서 겪은 문제로 흐름을 잡고 원리·코드·실무 적용을 한글로 정리합니다.
-
C++ 현대적 다형성 설계: 상속 대신 합성·variant
C++ 현대적 다형성 설계: 상속 대신 합성·variant에 대해 정리한 개발 블로그 글입니다. 33번에서 가상 함수·vtable을 다뤘지만, 실무에서는 상속 트리가 깊어질수록 변경 비용과 ABI 부담이 커집니다. 합성(Composition)(상속 대신 다른 객체를 멤버로 갖아 동작을 조합하는 설계)은 "동작을 객체로… 개념과 예제 코드를 단계적으로 다루며, 실무·학습에 참고할 수 있도록 구성했습니다. 관련 키워드: C++, 다형성, 상속, 합성,…
-
C++ 인터페이스 설계와 PIMPL: 컴파일 의존성을 끊고 바이너리 호환성(ABI) 유지하기 [#38-3]
C++ 인터페이스 설계와 PIMPL: 컴파일 의존성을 끊고 바이너리 호환성(ABI) 유지하기 [#3…. 헤더가 바뀌면 세상이 다시 빌드된다부터 핵심 개념·패턴·실무 함정을 코드 예제로 풉니다.
-
C++ 캐시 효율적인 코드: 데이터 지향 설계 가이드
15번 성능 최적화를 하드웨어 레벨로 확장. 데이터 지향 설계와 캐시 라인 정렬·패딩으로 압도적 성능을 내는 방법을 다룹니다. AoS vs SoA, 거짓 공유 해결, 실전 벤치마크까지 C++ 실전 가이드 시리즈에서 예제와 함께 다룹니다.
-
C++ std::chrono 완벽 가이드 | duration·time_point·클럭·시간 측정 실전 활용
C++ time() 대신 std::chrono로 정확한 시간 측정. duration, time_point, system_clock, steady_clock, duration_cast, 벤치마크·타임아웃·로그 타임스탬프까지 실전 패턴.
-
C++ 현대적 메모리 관리: 커스텀 알로케이터 제작과 std::pmr 가이드
힙 할당 비용을 줄이기 위한 메모리 풀과 C++17 std::pmr(polymorphic memory resources)로 재사용 가능한 버퍼·풀을 만드는 방법. 문제 시나리오, 완전한 예제, 흔한 에러, 성능 벤치마크, 프로덕션 패턴까지 실전 코드로 다룹니다.
-
C++ std::pmr 완벽 가이드 | Polymorphic Memory Resource로 성능 10배 향상
C++ std::pmr로 메모리 할당 성능을 10배 향상시키는 방법. polymorphic_allocator, monotonic_buffer_resource, memory_pool 실전 예제와 벤치마크 포함. malloc 병목 해결.
-
C++ SIMD와 병렬화: std::execution과 인트린직 가이드
C++ SIMD와 병렬화: std::execution과 인트린직 가이드. 루프가 느린데 컴파일러가 벡터화를 못 한다·실무에서 겪은 문제로 흐름을 잡고 원리·코드·실무 적용을 한글로 정리합니다.
-
C++ SIMD와 병렬화: std::execution과 인트린직 가이드
C++ SIMD와 병렬화: std::execution과 인트린직 가이드. 루프가 느린데 컴파일러가 벡터화를 못 한다·실무에서 겪은 문제로 흐름을 잡고 원리·코드·실무 적용을 한글로 정리합니다.