//============================================================================ // Name : Template.cpp // Author : 齐保元 // Version : // Copyright : Your copyright notice // Description : Hello World in C++, Ansi-style //============================================================================ #include <iostream> using namespace std; template<typename T, size_t size = 10> class C { T m[size]; public: void print_size() { cout << size << endl; } }; template<> class C<char> { char m[100]; public: void print_size() { cout << 100 << endl; } }; int main() { C<char> ().print_size(); C<char, 10> ().print_size(); C<char, 8> ().print_size(); return 0; } 输出 :100 100 8 特化的形式: 1.关键字template后面接一对空的尖括号(<>); 2.再接模板名和一对尖括号,尖括号中指定这个特化定义的模板形参; 3.函数形参表; 4.函数体