在本教程中,我们将讨论一个程序,以了解C ++中的模板专业化。
诸如此类的标准函数sort()
可用于任何数据类型,并且它们的行为相同。但是,如果您想为特定的数据类型(甚至是用户定义的)设置函数的特殊行为,我们可以使用模板专门化。
#include <iostream> using namespace std; template <class T> void fun(T a) { cout << "The main template fun(): " << a << endl; } template<> void fun(int a) { cout << "Specialized Template for int type: " << a << endl; } int main(){ fun<char>('a'); fun<int>(10); fun<float>(10.14); return 0; }
输出结果
The main template fun(): a Specialized Template for int type: 10 The main template fun(): 10.14