Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 레이캐스팅
- 쿠버네티스
- 동료학습
- 부동소수점
- schema first
- c++
- Cloud Spanner
- 파이썬
- GraphQL
- 엣지컴퓨팅
- 정렬
- 창업
- 42서울
- adminbro
- mistel키보드
- 스타트업
- 스플릿키보드
- enable_if
- 이노베이션아카데미
- raycasting
- 자료구조
- psql extension
- 도커
- 어셈블리
- 어셈블리어
- uuid-ossp
- 프라이빗클라우드
- 42seoul
- SFINAE
- 텍스트북
Archives
- Today
- Total
목록template class (1)
written by yechoi
[C++] 템플릿을 헤더(hpp)에 정의해야 하는 이유는?
* 본 글은 아래의 문서를 정리했습니다. Standard C++ isocpp.org 먼저 알아둬야 할 사실은 다음과 같다. 템플릿은 클래스도 함수도 아니다. 클래스, 함수 패밀리를 생성하기 위해 컴파일러가 사용하는 "패턴"이다. 컴파일러가 코드를 생성하기 위해선, 컴파일러는 템플릿의 선언뿐만 아니라 정의를 볼 수 있어야 하며 템플릿을 구성하는 타입 등을 알 수 있어야 한다. 예를 들어 Foo를 사용하려고 한다면, 컴파일러는 Foo 템플릿 뿐만 아니라 당신이 Foo를 만들려고 한다는 사실 또한 알아야 한다. 컴파일러는 cpp 파일을 컴파일 하는 동안 각각의 cpp 파일의 내용을 기억하고 있지 않는다. 이러한 방식의 컴파일을 "separate compilation model"이라고 부른다. 이러한 사실을 바..
Born 2 Code/C, C++
2020. 11. 29. 22:34