泛型程式設計和STL技術
1、模闆
1.1模闆的概念
模闆就是建立通用的模具,大大提高複用性
模闆不能直接使用,隻是一個架構,也不是萬能的
1.2函數模闆
函數模闆作用:
建立通用函數,其函數傳回類型和形參類型可以不具體指定,用虛拟的類型來代表
文法:
template <typename T>
函數聲明或定義
解釋:
template---聲明建立模闆
typename---表明其後面的符号是一個資料類型,可用class代替
T---通用的資料類型,可用其他字元替換
案例:
template <typename T>
void mySwap(T &a,T &b)
{
T temp=a;
a=b;
b=temp;
}
void test( )
int a=10,b=10;
mySwap(a,b);//1、自動類型推導
mySwap<int>(a,b);// 2、顯示指定類型
1.3.1類模闆文法
1.3.2類模闆與函數模闆的差別
1.類模闆沒有自動類型推導方式
void test01()
//Person p("孫悟空",200);無法用自動類型推導
Person<string,int>p("孫悟空",200);
2.類模闆在模闆參數可以有預設參數
1.3.3類模闆中的成員函數建立時間