函數模板的定義可以用來作爲一個無限個函數實例集合定義的規範描述(prescription)。模板本身不能定義任何函數。例如,當編譯器實現看到下面的模板定義時
template <typename Type>
Type min(Type t1,Type t2)
{
return t1<t2?t1:t2;
}
這時候你可能以爲自己寫好了一個函數,但是編譯器不會認爲這是一個函數,它只會保存這個形式,直到min()這個函數被使用:
int i,j;
double dsth = min(i,j);
這時候纔會根據