template <class T1>

class MySimple<T1, int>    { ... }


-> T2 하나에 대해서만 부분적으로 특수화를 진행한 것이다. 그래서 이를 가리켜 '클래스 템플릿의 부분 특수화' 라 한다.



MySimple<char, double> obj1;

이 문장에서 <T1, double>에 대해 부분적으로 특수화된 클래스 객체가 생성되었다.


MySimple<int, double> obj3;

이 문장에서 <int, double>에 대해 전체적으로 특수화된 클래스의 객체가 생성되었다.


이렇듯 실행결과를 통해서, 부분 특수화와 전체 특수화의 두 가지 모두에 해당하는 객체생성 문장에서는 전체 특수화된 클래스를 대상으로 객체가 생성됨을 확인할 수 있다.

따라서, 전체 특수화가 부분 특수화보다 우선시 된다고 정리하면 된다.!!!

Posted by scii
: