国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

C++ 函數模板

2019-11-08 02:57:37
字體:
來源:轉載
供稿:網友

函數重載功能實現了一個函數名的重復定義,但是即使是這樣,在程序中仍然需要分別定義每一個函數,如下連接: http://blog.csdn.net/chaipp0607/article/details/55281496

為了解決這個問題,C++提供了函數模板。所謂函數模板,實際上是建立一個通用的函數,其函數的類型和形參類型不具體指定,用一個虛擬的類型來代替。這個通用函數就稱為函數模板。 凡是函數體相同的函數都可以用這個模板來代替,不比定義多個函數,只。須在模板中定義一次即可。在調用函數時系統(tǒng)會根據實參的類型來取代模板中的虛擬類型,從而實現不同的函數功能。

定義函數模板的一般形式:

template <typename T>

或者:

template <class T>

T為虛擬的類型名,class和typename的作用相同,都表示“類型名”,可以互換。

#include <iostream> using namespace std; template <typename T>T max_PRivate(T a,T b){ if (b>a) a=b; return a;}int main( ) { int i =1; int j =2; int m; double q =1.1; double w =2.2; double e; m = max_private(i,j); e = max_private(q,w); cout <<m<<endl; cout <<e<<endl; getchar(); return 0; }

運行結果: 2 2.2

注意,函數模板只適用于與函數體相同,函數的參數個數相同,類型不同的情況。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 黄浦区| 崇义县| 鸡泽县| 资溪县| 通渭县| 宁安市| 安吉县| 双峰县| 晋中市| 云阳县| 定州市| 绥棱县| 唐海县| 新平| 体育| 庄浪县| 射洪县| 东阿县| 桐庐县| 平潭县| 博野县| 鲁山县| 宣武区| 镇沅| 南皮县| 集安市| 墨江| 边坝县| 手游| 武安市| 德令哈市| 自治县| 靖州| 疏勒县| 都匀市| 甘德县| 石林| 高雄县| 会理县| 青龙| 富平县|