模板具有通用功能,怎么定制呢? 特化即可, 来看个例子:

#include <iostream>
using namespace std;

template<typename T>  
void square(T a)  
{  
    cout<< a * a << endl;  
}  

template<>  
void square<int>(int a)  
{  
    cout << a + a <<endl;  
}  

int main()
{
 	square(10);    // 20
	square(10.0);  // 100
    return 0;
}

       以后看到要认识。 想起来了, n年前面试被问过。




本文转载:CSDN博客