C 函式模板

2021-08-21 17:35:56 字數 669 閱讀 3139

c++函式模板主要是為了方便函式形參的個數和處理邏輯一樣,只有函式形參的型別不一樣的多個函式,可以定義乙個通用的函式模板,統一呼叫,減少函式的定義。

函式模板定義有兩個關鍵字:

template:說明是函式的模板

typename/class :用於定義引數的型別

定義格式:

定義乙個函式引數型別:

template

定義多個函式引數型別:

template

其中typename可以用class代替(不建議)

使用時,在函式頭之前新增乙個引數型別的定義,然後用統一的引數型別代替原來函式的具體型別即可,詳細示例**如下.

#include using namespace std;

//定義乙個函式模板

template //定義函式的引數型別

t getmax(t a,t b,t c) //函式具體的實現邏輯

if (c>a)

return a;

}int main()

{ int x1 = 3;

int x2 = 4;

int x3 = 5;

int z = getmax(x1,x2,x3); //函式呼叫

cout程式執行結果如下:

c 函式模板

include using namespace std template t max t a,t b,t c int main int main int i1 185,i2 76,i3 567,i double d1 56.63,d2 90.23,d3 3214.78,d long g1 67854...

c 函式模板

關鍵字template總是放在模板的電腦關於與宣告的最前面,關鍵字後面是用逗號分隔的模板參數列,該列表是模板參數列,不能為空。模板引數可以是乙個模板型別引數,它代表了一種型別 也可以是乙個模板非型別引數,它代表了乙個常量表示式。模板型別引數由關鍵字class或typename後加乙個識別符號構成。在...

C 函式模板

c 提供了函式模板 function template 所謂函式模板,實際上是建立乙個通用函式,其函式型別和形參型別不具體指定,用乙個虛擬的型別來代表。這個通用函式就稱為函式模板。凡是函式體相同的函式都可以用這個模板來代替,不必定義多個函式,只需在模板中定義一次即可。在呼叫函式時系統會根據實參的型別...