전체 특수화 구현
std::string 비교처럼 일반 코드보다 더 맞는 처리가 있을 때 씁니다.
명시적 특수화, 부분 특수화, std::vector<bool>, if constexpr는 일반 패턴과 예외 구현의 선택지를 보여 줍니다.
std::string 비교처럼 일반 코드보다 더 맞는 처리가 있을 때 씁니다.
클래스 템플릿에서 포인터형, 배열형, const형처럼 타입 계열별 정책을 분리합니다.
특수화가 항상 사용성까지 좋아지는 것은 아니라는 예시입니다.
작은 차이는 분기로, 구조 차이는 특수화로 나눠 생각합니다.