類模板: 類模板是爲某一些類只有數據類型不同,而將數據類型進行抽象處理的機制. 可由該模板實現不同數據類型的模板類.
定義類模板: template <class T, int size> 放在類的首部. 在類中可使用這兩個參數.
T爲類型參數
size 爲非類型參數 ,用來說明類模板中屬性. 如:
template <class T, int size>
class CTest
{
public:
T Fun(T a);
private:
}
定義類模板中的函數:
首先在每個函數前加template<class T,int size> .
其次在類後添加<T,size> 這樣就可在函數中使用模板參數了.
template <class T, int size>
T CTest<T,size>::Fun(T a)
{
return a;
}
模板類: 類模板的實現即爲模板類. 定義一個int型的CTest模板類.
CTest<int> a;
函數模板: 將功能相同,只有數據類型不同的某類函數進行抽象.
定義函數模板: 在函數定義前添加 template <class T>
如
template <class T> T Add(T a, T b)
{
return a+b;
}
int a=1,b=2, n=0;
n=Add(1,2);
//n=3;