而範本的功用在於不確定使用者輸入的型態時,所用來代表曖昧的變數,例如:
首先我們先介紹function template:
int sum (int a,int b)
{
return a+b;
}
以上是當輸入是整數型態時,當使用者輸入是浮點數型態時,我們必需要再定義一個輸入為浮點數的函數。
float sum(float a,float b)
{
return a+b;
}
其實這兩個幾乎一模一樣,就只有差在輸入與傳回的型態,這個時候我們就可以用template來取代它們
template <class T>
T sum(T a,T b)
{
return a+b;
}
這是我把T想成記錄型態的變數,它可以是int,也可以是float。
要注意的是,在定義function時,在上一行必需加入template <class ???>關鍵字
而???就是之後可能是int或float的曖昧關鍵字。
參考資料:C++ Gossip: 函式範本(Function template)
沒有留言:
張貼留言