블로그
-
C++ vector vs list vs deque | "어떤 컨테이너?" 성능 비교와 선택 가이드
C++ STL 컨테이너 vector, list, deque 완벽 비교 가이드. 시간 복잡도만으로는 알 수 없는 캐시 효율의 비밀, 실제 벤치마크 결과, 원소 개수별 성능 차이, 게임/웹/시스템 프로그래밍 실전 사례까지. 중간 삽입이 많아도 vector가 list보다 빠른 이유를 데이터로 증명합니다.
-
C++ Constant Initialization | "상수 초기화" 가이드
C++ 상수 초기화(constant initialization) 는 컴파일 타임에 값이 정해지는 초기화입니다. constexpr 함수, constexpr if와 함께 사용하며, 값 초기화·0 초기화와 구분해 두면 좋습니다.
-
C++ Copy Initialization | "복사 초기화" 가이드
C++ 복사 초기화(copy initialization) 는 = expr 형태로 변수를 초기화하는 방식입니다. 리스트 초기화 {}와 구분되며, 이동 의미론·RVO/NRVO로 복사가 생략되는 경우가 많습니다. 복사·이동 생성자와 함께 보면 동작을 정리하기 좋습니다.
-
C++ default와 delete | "특수 멤버 함수" 가이드
C++11 =default / =delete로 특수 멤버 함수를 명시적으로 제어하는 방법입니다. 복사 금지·이동 허용, 힙 할당 금지, Rule of Zero 등을 예제로 정리합니다.
-
C++ Default Initialization | "기본 초기화" 가이드
초기화자 없이 선언할 때 적용되는 기본 초기화(default initialization)입니다. 지역 기본 타입은 쓰레기 값·미정의 상태가 될 수 있어 읽기만 해도 정의되지 않은 동작일 수 있습니다. 전역·정적과의 차이, 클래스 멤버와의 관계, 값·리스트 초기화와의 비교, 실무 함정을 정리합니다.
-
C++ Directory Iterator | "디렉토리 순회" 가이드
directory_iterator와 recursive_directory_iterator 비교, 필터링·심볼릭 링크·error_code, 파일 검색·디스크 사용량·성능까지 C++17 filesystem 순회 실전 가이드입니다.
-
C++ Dynamic Initialization | "동적 초기화" 가이드
C++ Dynamic Initialization - "동적 초기화" 가이드. C++ Dynamic Initialization의 동적 초기화란?, 정적 변수 초기화, 실전 예시를 실전 코드와 함께 설명합니다.
-
C++ Extern Linkage | "외부 연결" 가이드
C++ Extern Linkage - "외부 연결" 가이드. C++ Extern Linkage의 내부 연결 vs 외부 연결, `extern "C"` 심화, 실전 라이브러리 설계 팁를 실전 코드와 함께 설명합니다.
-
C++ File Status | "파일 상태" 가이드
C++17 std::filesystem의 file_status·perms, status와 symlink_status, file_type·권한 검사, 백업·로그 정리 실전, Windows와 POSIX 차이까지 코드와 함께 정리합니다.
-
C++ Fold Expressions | "파라미터 팩 접기" 가이드
C++17 fold expression은 가변 인자 템플릿의 파라미터 팩을 한 번에 연산자로 "접는" 문법입니다. 재귀 템플릿 없이 pack 전체에 +, &&, << 등을 적용할 수 있어 템플릿 기초를 익힌 뒤 활용하면 코드가 짧아집니다.