매개변수 설계
데이터 타입, 크기, 비교 정책처럼 컴파일 타임에 달라질 요소를 고른다.
과한 일반화 경계클래스 템플릿은 선언만으로 타입이 아니라 인자를 넣어야 실제 타입이 된다. 멤버 정의 위치, CTAD, partial specialization, non-type parameter까지 같이 보면 오류 원인을 빠르게 좁힐 수 있다.
데이터 타입, 크기, 비교 정책처럼 컴파일 타임에 달라질 요소를 고른다.
과한 일반화 경계Stack<int>와 Stack<double>은 서로 다른 타입으로 컴파일된다.
코드 bloat 고려템플릿 멤버 함수 정의는 보통 헤더에 있어야 인스턴스화 시 보인다.
링크 오류 방지특정 타입이나 패턴에서 저장 방식·연산이 달라지면 specialization을 검토한다.
선택 규칙 점검