是什麼:
允許你定義一個可以根據你的用途進行編譯的模板
當決定呼叫該函式時,模版會根據情況建立函式
寫法:
template<typname T>//型別不固定 傳什麼型別是什麼型別
{
void print(T value)
{
std::cout<< value <<std::endl;
}
}
int main()
{
print (5);
print("www");
print("5.5f");
}
工作過程:
在編譯器被評估。當實際呼叫時基於傳遞的引數,這時函式才被建立出來並編譯
用在類上:
template
class Array
{
private:
int m_Array[N]
public:
int GetSize()const
{
return N
}
}
int main()
{
Array<5>array;
}