태그: template
30편
-
C++ 헤더 온리 라이브러리 | "multiple definition" 에러 없이 만들기
C++ 헤더 온리 라이브러리의 C++, 라이브러리, "multiple, 들어가며: "헤더에 함수를 정의했더니 링커 에러가 나요"를 실전 예제와 함께 상세히 설명합니다.
-
C++ auto 타입 추론 | 복잡한 타입을 컴파일러에 맡기기
C++ auto 타입 추론에 대해 정리한 개발 블로그 글입니다. auto는 초기화식으로부터 변수 타입을 컴파일러가 추론하게 하는 C++11 키워드입니다. 반복자·람다·긴 타입 이름을 짧게 쓰고, 제네릭 코드를 단순화할 때 씁니다. 템플릿 인자 추론과 비슷하게 "타입을 생략하고 컴파일러에… 개념과 예제 코드를 단계적으로 다루며, 실무·학습에 참고할 수 있도록 구성했습니다. 관련 키워드: C++, auto, type deduction, C++11, template.
-
C++ CTAD | "클래스 템플릿 인자 추론" 가이드
C++17 CTAD로 pair·vector 등 클래스 템플릿 인자를 생략하는 방법. 사용자 정의 클래스와 추론 가이드(deduction guide) 실무 팁을 정리합니다.
-
C++20 Concepts 완벽 가이드 | 템플릿 제약의 새 시대
C++20 Concepts 완벽 가이드: 템플릿 제약의 새 시대. C++20 Concepts란? 왜 필요한가·concept, requires로 흐름을 잡고 원리·코드·실무 적용을 한글로 정리합니다.
-
C++ constexpr if | "컴파일 타임 분기" 가이드
C++17 if constexpr은 템플릿 안에서 컴파일 타임에만 평가되는 조건문입니다. constexpr 함수·상수 초기화와 함께 쓰이고, type_traits로 분기할 때 템플릿 특수화 대신 한 함수에서 처리할 수 있습니다.
-
C++ CRTP 패턴 | "정적 다형성" 구현 가이드
C++ CRTP 패턴: "정적 다형성" 구현 가이드. CRTP란?·가상 함수 vs CRTP로 흐름을 잡고 원리·코드·실무 적용을 한글로 정리합니다.
-
C++ CRTP 완벽 가이드 | 정적 다형성과 컴파일 타임 최적화
C++ CRTP 완벽 가이드: 정적 다형성과 컴파일 타임 최적화. CRTP란? 왜 필요한가·기본 구조로 흐름을 잡고 원리·코드·실무 적용을 한글로 정리합니다.
-
C++ Deduction Guides | "추론 가이드" 가이드
CTAD(Class Template Argument Deduction)와 사용자 정의 deduction guide, C++17 이전과 이후의 작성 방식, 실무 예제를 정리합니다.
-
C++ enable_if | "조건부 컴파일" 가이드
C++ enable_if의 C++, enable_if, "조건부, enable_if란?를 실전 예제와 함께 상세히 설명합니다.
-
C++ Expression Template 완벽 가이드 | 지연 평가와 수학 라이브러리 최적화
C++ Expression Template 완벽 가이드: 지연 평가와 수학 라이브러리 최적화. Expression Template이란? 왜 필요한가·기본 구조로 흐름을 잡고 원리·코드·실무 적용을 한글로 정리합니다.
-
C++ Expression Templates | "지연 평가" 고급 기법
C++ Expression Templates: "지연 평가" 고급 기법. 문제 상황·Expression Templates 해결로 흐름을 잡고 원리·코드·실무 적용을 한글로 정리합니다.
-
C++ Fold Expressions | "파라미터 팩 접기" 가이드
C++17 fold expression은 가변 인자 템플릿의 파라미터 팩을 한 번에 연산자로 "접는" 문법입니다. 재귀 템플릿 없이 pack 전체에 +, &&, << 등을 적용할 수 있어 템플릿 기초를 익힌 뒤 활용하면 코드가 짧아집니다.
-
C++ 제네릭 람다 | auto 매개변수·템플릿 람다(C++20) 완전 정리
일반 람다와 제네릭 람다의 차이, C++14 auto 매개변수의 템플릿화 원리, C++20 템플릿 람다, STL 알고리즘과의 실전 조합, 타입 추론 규칙과 성능까지 한 번에 정리합니다.
-
C++ if constexpr | "컴파일 타임 if" 가이드
C++ if constexpr: "컴파일 타임 if" 가이드. if constexpr란?·기본 사용로 흐름을 잡고 원리·코드·실무 적용을 한글로 정리합니다.
-
C++ Mixin | "믹스인" 가이드
C++ Mixin - "믹스인" 가이드. C++ Mixin의 Mixin이란?, 기본 패턴, 실전 예시를 실전 코드와 함께 설명합니다.
-
C++ Policy-Based Design | "정책 기반 설계" 가이드
C++ Policy-Based Design - "정책 기반 설계" 가이드. C++ Policy-Based Design의 여러 정책 조합, 실전 예시, 정책 조합를 실전 코드와 함께 설명합니다.
-
C++ Reference Collapsing | "레퍼런스 축약" 가이드
레퍼런스 축약(reference collapsing)은 T&와 T&&의 네 가지 조합을 T& 또는 T&& 하나로 합치는 C++11 규칙입니다. forwarding reference(T&&) 추론, std::forward, typedef·decltype에서의 타입이 어떻게 정해지는지 실무 관점으로 정리합니다.
-
C++ SFINAE와 Concepts | "템플릿 제약" 가이드
C++ SFINAE와 Concepts - "템플릿 제약" 가이드. C++ SFINAE와 Concepts의 SFINAE란?, enable_if, type_traits를 실전 코드와 함께 설명합니다.
-
C++ SFINAE | "Substitution Failure Is Not An Error" 가이드
SFINAE (Substitution Failure Is Not An Error) 는 템플릿 치환 실패가 에러가 아닌 C++ 원칙입니다. 컴파일러가 템플릿 인스턴스화 시 치환에 실패하면, 에러를 발생시키지 않고 다른 오버로드를 찾습니다.
-
C++ Tag Dispatch 완벽 가이드 | 컴파일 타임 함수 선택과 STL 최적화
C++ Tag Dispatch 완벽 가이드: 컴파일 타임 함수 선택과 STL 최적화. Tag Dispatch란? 왜 필요한가·기본 구조로 흐름을 잡고 원리·코드·실무 적용을 한글로 정리합니다.
-
C++ Tag Dispatching | "태그 디스패칭" 패턴 가이드
C++ Tag Dispatching: "태그 디스패칭" 패턴 가이드. Tag Dispatching이란?·Iterator Tag Dispatching로 흐름을 잡고 원리·코드·실무 적용을 한글로 정리합니다.
-
C++ 템플릿 인자 추론 | template argument deduction 가이드
C++ 템플릿 인자 추론: template argument deduction 가이드. 템플릿 인자 추론이란?·추론 규칙 상세로 흐름을 잡고 원리·코드·실무 적용을 한글로 정리합니다.
-
C++ 템플릿 | "제네릭 프로그래밍" 초보자 가이드
C++ 템플릿: "제네릭 프로그래밍" 초보자 가이드. 템플릿이란?·함수 템플릿로 흐름을 잡고 원리·코드·실무 적용을 한글로 정리합니다.
-
C++ Template Lambda | "템플릿 람다" 가이드
C++ Template Lambda - "템플릿 람다" 가이드. C++ Template Lambda의 2. 타입 제약 (Concepts), 3. 실전 예제를 실전 코드와 함께 설명합니다.
-
C++ 템플릿 특수화 | template specialization 가이드
C++ 템플릿 특수화: template specialization 가이드. 전문화 (Full Specialization)부터 핵심 개념·패턴·실무 함정을 코드 예제로 풉니다.
-
C++ 템플릿 템플릿 인자 | template template parameter 가이드
C++ 템플릿 템플릿 인자에 대해 정리한 개발 블로그 글입니다. 템플릿 템플릿 인자(template template parameter) 는 템플릿이 다른 템플릿을 인자로 받게 하는 문법입니다. vector<int>처럼 이미 구체화된 타입이 아니라, "어떤 컨테이너 템플릿"을 받아서 그… 개념과 예제 코드를 단계적으로 다루며, 실무·학습에 참고할 수 있도록 구성했습니다. 관련 키워드: C++, template, template template…
-
C++ Type Traits | "타입 특성" 완벽 가이드
C++ Type Traits에 대해 정리한 개발 블로그 글입니다. #include <type_traits> using namespace std;
-
C++ Universal Reference | "유니버설 레퍼런스" 가이드
C++ Universal Reference - "유니버설 레퍼런스" 가이드. C++ Universal Reference의 타입 추론 규칙, 실전 예시를 실전 코드와 함께 설명합니다.
-
C++ 가변 인자 템플릿 | "가변 템플릿" 완벽 가이드
C++ 가변 인자 템플릿의 C++, 템플릿, "가변, 가변 인자 템플릿이란?를 실전 예제와 함께 상세히 설명합니다.
-
C++ 템플릿 입문 | template<typename T>와 템플릿 컴파일 에러 해결법
C++ 템플릿 입문: template<typename T>와 템플릿 컴파일 에러 해결법. 같은 코드를 타입마다 복사하고 있었다·실무에서 겪은 문제로 흐름을 잡고 원리·코드·실무 적용을 한글로 정리합니다.