2
const char *
에 특화된 템플릿도 char *
을 붙잡습니까? 예를 들어const char *에 특수화 된 템플릿도 char *를 허용합니까?
:
이template <typename T> class Foo { /* ... */ };
template <> class Foo<const char *> { /* ... */ };
이 Foo<char *>
일반 템플릿 또는 전문 하나를 참조 할 것인가?
가능한 동급 유형마다 전문화를 만들어야합니까? – Matt
@Matt : 아니요, 부분 전문화를 사용하여 여러 유형을 처리 할 수 있습니다. generic에'typename = void'를 가진 두번째 템플릿 매개 변수를 추가하면,'typename std :: enable_if :: value || partial specialization에서 std :: is_same :: value> :: type'을 호출합니다. –
실제로, [' "B"'] (http://coliru.stacked-crooked.com/a/817bc782013ebfa1)를 인쇄합니다. 'thing'을'char *'로 만들겠습니까? –