模板 函數模板 template<typename T1,typename T2,……> 定義了必須使用,否則報錯 template<typename T> T add(T a,T b) { return a + b; } 根據具體的使用情況生成模板函數 add(1.1,2.1); //生成doub ...
模板
函數模板
template<typename T1,typename T2,……>
- 定義了必須使用,否則報錯
template<typename T>
T add(T a,T b)
{
return a + b;
}
根據具體的使用情況生成模板函數
add(1.1,2.1); //生成double類型的模板函數
add(3,4); //生成int類型的模板函數
類模板
template <typename T>
class A
{
T a;
};
- 定義時必須給出類模板的類型
int main()
{
text<int> t;
}
- 類模板的成員函數,定義時在函數前繼續寫上模板
template<typename T>
class A
{
public;
void fun(T x);//類內聲明
};
//類外定義
template<typename T>
void A<T>::fund(T x)
{
return x;
}