**:
還是例子說話。
函式模板:
templatemax(const t a, const t b)
這樣用:
//int
int a = 1, b = 2;
max(a, b);
//float
float c = 1.0f, d = 2.0f;
max(c, d);
//double
double e = 1.0, f = 2.0;
max(e, f);
//...
類模板:
template
class c
};對這個類進行例項化:
//int
c cn;
//float
c cf;
//double
c cd;
//...
現在看出區別了吧,區別在於函式模板和類模板的使用方式上:
函式 模板在使用時不需要程式設計師指定型別,編譯器在編譯的時候會自動繫結;而
類模板需要程式設計師手工指定,指定的方式是:類名字《型別》。
類模板,模板類和函式模板,模板函式
單整數類 雙整數類 所以c艹跟其他強型別語言為我們提供了乙個所謂模版功能 變數型別 整數 類模板的重點是模板。表示的是乙個模板,專門用於產生類的模子。例子 1 template 2 class vector 3 使用這個vector模板就可以產生很多的class 類 vector vector ve...
函式模板和類模板
1 函式模板 template 形參名,class 形參名,返回型別 函式名 引數列表 其中template和 class 是關鍵字,class 可以用typename 關見字代替,在這裡 typename 和class 沒區別,括號中的引數叫模板形參,模板形參和函式形參很相像,模板形參不能為空。一...
函式模板和類模板
函式過載 函式名相同,引數型別不同,可以完成具有相似功能的邏輯.如何實現乙個通用的交換函式呢?void swap int a,int b void swap char a,char b void swap double a,double b 使用函式過載雖然可以實現,但是有以下幾個不好的地方 過載的...