1. 程式人生 > >C++之模板函式與模板類

C++之模板函式與模板類

C++中的模板是為了適應不同資料型別的呼叫。關鍵詞有template class typename 

template <typename T>

T  max(T a, T b)

{
  return (a>b) ? a:b;

}

class和typename在模板中意義相同。

呼叫模板: 

max(99,100);

max<char>('A','B')

模板會自動對資料型別,即使不用<>也可以。但為了標準,以及可讀性,建議都註明資料型別。

模板類會稍微複雜點。

template <typename T>

class Display

{

};

呼叫模板:

template <typename T>

void display(T,a);

每次呼叫類內的函式,上面都需註明“模板”

ps:使用模板類時,函式原型和函式內容不能分兩個檔案寫,要寫在同一個檔案。