1. 챕터 요약: C++ Templates (템플릿)
이번 챕터에서는 C++ 템플릿(Template)의 개념과 활용 방법을 학습합니다.
1.1 주요 내용
- 템플릿의 개념
- 데이터 타입에 독립적인 프로그램을 작성할 수 있는 기능
- 코드의 재사용성을 높이고 가독성을 유지하여 개발 생산성을 향상시킴
- 대표적인 활용 사례: STL(Standard Template Library)
- 템플릿 인스턴시에이션(Template Instantiation)
- C++은 컴파일 언어이므로 템플릿이 실제 코드로 생성되는 과정(인스턴시에이션)이 중요함
- 이번 챕터에서 인스턴시에이션이 언제, 어떻게 이루어지는지 학습
- Rvalue와 템플릿
- C++의 성능 최적화를 위한 Rvalue 개념 이해
- 템플릿과 결합하여 등장하는 Perfect Forwarding과 Forwarding Reference(Forward Reference)를 학습
- 다양한 템플릿 종류
- 함수 템플릿(Function Template)
- 클래스 템플릿(Class Template)
- 변수 템플릿(Variable Template)
- C++20 템플릿 컨셉(Concepts)
- C++20에서 도입된 Concepts의 개념과 활용 방법 학습
※ 핵심 정리
이번 챕터에서는 C++ 템플릿의 기본 개념부터 인스턴시에이션, Perfect Forwarding, 다양한 템플릿 종류, 그리고 C++20의 Concepts까지 학습하며, 타입에 독립적이면서도 효율적인 코드를 작성하는 방법을 익히는 것을 목표로 합니다.
'Fundamental of CS > : : C++' 카테고리의 다른 글
| [Templates] 템플릿 타입 추론(Type Deduction)과 std::forward (0) | 2024.07.16 |
|---|---|
| [Templates] Introduction (0) | 2024.07.16 |
| [Smart Pointer] Weak Pointer (0) | 2024.07.16 |
| [Smart Pointer] Shared Pointer (0) | 2024.07.16 |
| [Smart Pointer] Unique Pointer (std::unique_ptr) (0) | 2024.07.16 |