freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

oop(c第12章模板最終版ppt-第12章模板(template)(文件)

 

【正文】 int m3=max(a,c) // 出錯(cuò),不能生成 max(int , char ) 《面向?qū)ο蟪绦蛟O(shè)計(jì)》 中國(guó)科學(xué)技術(shù)大學(xué)計(jì)算機(jī)系 馬建輝 46 函數(shù)模板的重載 include template class T T sum(T *array,int size) { T total。 return total。 i++) total + = array1[i]+array2[i]。 static double douarr[ ]={, , , , , , , , }; int itotal=sum(intarr1,10)。 《面向?qū)ο蟪绦蛟O(shè)計(jì)》 中國(guó)科學(xué)技術(shù)大學(xué)計(jì)算機(jī)系 馬建輝 48 小結(jié) ? 模板是一種代碼重用的機(jī)制; ? 模板是在強(qiáng)類型語(yǔ)言上實(shí)現(xiàn)的一種弱類型機(jī)制。 int iatotal = sum(intarr1, intarr2, 8 )。 } void main() { static int intarr1[ ]={1,2,3,4,5,6,7,8,9,10}。 for (int i =0。isize 。 } 《面向?qū)ο蟪绦蛟O(shè)計(jì)》 中國(guó)科學(xué)技術(shù)大學(xué)計(jì)算機(jī)系 馬建輝 45 ? 應(yīng)保證函數(shù)調(diào)用時(shí)的參數(shù)與模板參數(shù)正好匹配,因?yàn)榫幾g器不會(huì)為函數(shù)模板的參數(shù)提供任何形式的轉(zhuǎn)換! int a。 int m1 = max(a,b)。 《面向?qū)ο蟪绦蛟O(shè)計(jì)》 中國(guó)科學(xué)技術(shù)大學(xué)計(jì)算機(jī)系 馬建輝 43 例 2:關(guān)于模板參數(shù) template class T void f() { // error, 函數(shù)參數(shù)列表中無(wú)函數(shù)模板參數(shù) T T a。 } 《面向?qū)ο蟪绦蛟O(shè)計(jì)》 中國(guó)科學(xué)技術(shù)大學(xué)計(jì)算機(jī)系 馬建輝 39 從類模板派生模板 (續(xù) ) 如果派生類沒(méi)有類型參數(shù),或者說(shuō)它的類型參數(shù)與基類的類型參數(shù)相同時(shí),派生類地模板參數(shù)只要包含基類的模板參數(shù)就可以了 template class T class C:public BaseT // 模板 C的參數(shù)與基類相同 { T c。 void main(){ derivedint,char di。 } }。 // ()。 // … }。 protected: float f。 j 20。 for(int i = 0。 } int length() const { return size。amp。 } }。 } friend ostreamamp。 operator=(const Numberamp。 } int length() const { return size。 operator[ ](int index) { // 重載 [ ] 實(shí)現(xiàn)關(guān)聯(lián)數(shù)組 require(index = 0 amp。 tempateclass T, int size = 100 class Array{ …。 } }。} template class T StackT:: ~Stack() { delete[ ] v。 T pop() 。 // 棧頂 int sz。) ?對(duì)模板來(lái)說(shuō),即使是在創(chuàng)建非內(nèi)聯(lián)函數(shù)定義時(shí),模板的所有定義和實(shí)現(xiàn)都必須放入一個(gè)頭文件中。} template class T int StackT:: size() const { return pv。 template class T StackT::Stack(int s){ v=p=new T[sz=s]。 void push(T a)。 // 棧底 T *p。 } } for(i=0。i++) { (?*?)。 i 10 。 void main() { int i。} void push(T a) { *p++ = a}。 // 棧底 T *p。 Stackint si(20) 。 例: StackT 《面向?qū)ο蟪绦蛟O(shè)計(jì)》 中國(guó)科學(xué)技術(shù)大學(xué)計(jì)算機(jī)系 馬建輝 15 類模板實(shí)例化 ? 給類模板的參數(shù)指定具體的類型,這一過(guò)程稱為 “ 類模板的實(shí)例化 ” 。} void push(T a) { *p++ = a}。 // 棧底 T *p。新的代碼替換裝置稱為“模板” (template)。} int size() const { retur
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1