블로그
-
C++ 프로파일링 | "어디가 느린지 모르겠어요" perf·gprof로 병목 찾기
C++ 프로파일링의 C++, 프로파일링, "어디가, 들어가며: "어디가 느린지 모르겠어요". 실전 예제와 코드로 개념부터 활용까지 정리합니다. C++·프로파일링·성능최적화 중심으로 설명합니다
-
C++ 컴파일 타임 최적화 | constexpr·PCH·모듈·ccache·Unity 빌드 [#15-3]
C++ 컴파일 타임 최적화에 대해 정리한 개발 블로그 글입니다. 룩업 테이블(미리 계산해 둔 값 배열—인덱스로 바로 결과를 찾을 때 사용)을 런타임(실행 중)에 초기화하고 있었습니다. 하지만 값은 항상 같았습니다. constexpr과 if constexpr을 쓰면 "항상 같은 값"이나… 개념과 예제 코드를 단계적으로 다루며, 실무·학습에 참고할 수 있도록 구성했습니다. 관련 키워드: C++, constexpr, 컴파일타임, 템플릿메타프로그래밍, PCH.
-
C++ Move Semantics | std::move로 불필요한 복사 제거하고 성능 최적화
C++ Move Semantics에 대해 정리한 개발 블로그 글입니다. 이동 의미론(move semantics)은 C++11에서 추가된 기능이라, 예전 C++ 책이나 레거시 코드만 보다 오면 “복사만 있는 줄 알았는데, 이동이 뭐지?”라고 느낄 수 있습니다. 비유하면 "이사할 때 가구를 통째로… 개념과 예제 코드를 단계적으로 다루며, 실무·학습에 참고할 수 있도록 구성했습니다. 관련 키워드: C++, move-semantics, 이동의미론, rvalue,…
-
C++ Perfect Forwarding | std::forward로 "복사 없이 인자 전달"
C++ Perfect Forwarding: std::forward로 "복사 없이 인자 전달". 래퍼 함수에서 인자가 복사된다·완벽한 전달이란로 흐름을 잡고 원리·코드·실무 적용을 한글로 정리합니다.
-
C++ 람다 표현식 | [=]·[&] 캡처와 sort·find_if에서 람다 활용법
C++ 람다 표현식: [=]·[&] 캡처와 sort·find_if에서 람다 활용법. 함수 객체가 너무 복잡하다·실무에서 겪은 문제로 흐름을 잡고 원리·코드·실무 적용을 한글로 정리합니다.
-
C++ std::function | 콜백·전략 패턴과 함수 객체
C++ std::function 완벽 가이드. 함수·람다·함수 객체를 변수에 저장, 콜백 패턴 구현, 전략 패턴(Strategy Pattern), operator() 오버로딩, std::bind 사용법, 성능 오버헤드, 실전 이벤트 시스템 구현까지 상세히 설명합니다.
-
C++ 범위 기반 for문과 구조화된 바인딩 | 모던 C++ 반복문
C++ 범위 기반 for문과 구조화된 바인딩에 대해 정리한 개발 블로그 글입니다. 컨테이너를 순회할 때마다 반복자 코드를 길게 작성해야 했습니다. 범위 기반 for(range-based for—for (auto& x : container) 형태로 컨테이너 전체를 순회하는 문법)는 "시작~끝"을 컴파일러가… 개념과 예제 코드를 단계적으로 다루며, 실무·학습에 참고할 수 있도록 구성했습니다. 관련 키워드: C++, 범위기반for, range-based-for,…
-
C++ auto와 decltype | 타입 추론으로 코드 간결하게 만드는 방법
C++ auto와 decltype에 대해 정리한 개발 블로그 글입니다. STL(Standard Template Library, 표준 템플릿 라이브러리) 컨테이너를 사용하다 보면 타입 이름이 엄청나게 길어집니다. 쉽게 말해 auto는 "컴파일러야, 여기 초기화하는 값 보고 타입 알아서 써 줘"라고 하는 것입니다. 개념과 예제 코드를 단계적으로 다루며, 실무·학습에 참고할 수 있도록 구성했습니다. 관련 키워드: C++, auto, decltype, 타입추론, 모던C++.
-
C++ optional·variant·any | "nullptr 체크 지겹다" C++17 타입 안전 처리
C++ optional·variant·any에 대해 정리한 개발 블로그 글입니다. 사용자 정보를 조회하는 함수를 만들었습니다. 하지만 사용자가 없을 때를 표현하기 어려웠습니다. std::optional은 "값이 있거나 없거나"를 타입으로 표현해서 nullptr(널 포인터—아무 객체도 가리키지 않음을… 개념과 예제 코드를 단계적으로 다루며, 실무·학습에 참고할 수 있도록 구성했습니다. 관련 키워드: C++, std::optional, std::variant,…
-
C++ 파일 입출력 | ifstream·ofstream으로 "파일 열기 실패" 에러 처리까지
C++ 파일 입출력: ifstream·ofstream으로 "파일 열기 실패" 에러 처리까지. 실무에서 겪은 문제·파일 스트림 기초로 흐름을 잡고 원리·코드·실무 적용을 한글로 정리합니다.