???????????????????
????????????????????壬???????????????????塣??????????????????

 

template <typename T>
class Test{
public:
void print(){
cout << "General template object" << endl;
}
};
template<>   // ??int????????
class Test<int>{
public:
void print(){
cout << "Specialized template object" << endl;
}
};
int main()
{
Test<int> a;
Test<char> b;
Test<float> c;
a.print();
b.print();
c.print();
return 0;
}

????????????
????Specialized template object
????General template object
????General template object
??????????????岻??????????????????????????????????Ρ????????????????????????????????????????????????? ????????????partial specialization???????磬C++??????е???vector????壺

 

template <typename T?? typename Allocator>
class vector
{
/*......*/
};
// ??????????
template <typename Allocator>
class vector<bool?? Allocator>
{
/*......*/
};

??????vector????????У??????????????bool??????????????????δ?????????????????????????????????????汾??????????壬?????????????????????Щ?????????汾??δ???????????????Ρ?