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

正文內(nèi)容

c與c的區(qū)別ppt課件-資料下載頁(yè)

2025-05-05 12:06本頁(yè)面
  

【正文】 coutc1=。 ()。 coutc2=。 ()。 c3=c1c2。 //使用重載運(yùn)算符完成復(fù)數(shù)減法 coutc3=c1c2=。 ()。 c3=c1+c2。 //使用重載運(yùn)算符完成復(fù)數(shù)加法 coutc3=c1+c2=。 ()。 } 66 《 數(shù) 據(jù) 結(jié) 構(gòu) 與 算 法 分 析 》 程序輸出的結(jié)果為: c1=(5,4) c2=(2,10) c3=c1c2=(3,6) c3=c1+c2=(7,14) 67 《 數(shù) 據(jù) 結(jié) 構(gòu) 與 算 法 分 析 》 繼承中的一個(gè)問(wèn)題 ?長(zhǎng)方形的面積: Area=W*H。 ?正方形的面積: Area=L*L。 ?正方形從長(zhǎng)方形繼承而來(lái),顯然就有了 兩個(gè)同名但操作并不相同 的求面積的成員函數(shù),當(dāng)計(jì)算正方形面積時(shí),怎么樣才能準(zhǔn)確調(diào)用正方形派生類中的函數(shù)呢? 長(zhǎng)方形 rectangle 正方形 square 繼承 《 數(shù) 據(jù) 結(jié) 構(gòu) 與 算 法 分 析 》 includeiostream class Point { public: Point(double i, double j) {x=i。 y=j。} double Area() const{ return 。} private: double x, y。 }。 class Rectangle:public Point { public: Rectangle(double i, double j, double k, double l)。 double Area() const {return w*h。} private: double w,h。 }。 《 數(shù) 據(jù) 結(jié) 構(gòu) 與 算 法 分 析 》 Rectangle::Rectangle(double i, double j, double k, double l) :Point(i,j) { w=k。 h=l。 } void fun(Point amp。s) // amp。s用到了引用 { coutArea=()endl。 } int main() { Rectangle rec(, , , )。 fun(rec)。 } 運(yùn)行結(jié)果: Area=0 《 數(shù) 據(jù) 結(jié) 構(gòu) 與 算 法 分 析 》 虛函數(shù) ?虛函數(shù) (Virtual):若某類中的一個(gè)成員函數(shù)被說(shuō)明為虛函數(shù),就意味著成員函數(shù)在派生類中可能存在著不同的實(shí)現(xiàn) ?在類的聲明中,在函數(shù)原型之前寫 virtual ?Virtual 函數(shù)類型 函數(shù)名(形參表) { 函數(shù)體 } ?virtual 只用來(lái)說(shuō)明類聲明中的原型,不能用在函數(shù)實(shí)現(xiàn)時(shí)。 《 數(shù) 據(jù) 結(jié) 構(gòu) 與 算 法 分 析 》 虛函數(shù) ?具有繼承性,基類中聲明了虛函數(shù),派生類中無(wú)論是否說(shuō)明,同原型函數(shù)都自動(dòng)為虛函數(shù)。 ?本質(zhì):不是重載聲明而是覆蓋。 ?調(diào)用方式:通過(guò)基類指針或引用,執(zhí)行時(shí)會(huì) 根據(jù) 指針指向的對(duì)象的類 ,決定調(diào)用哪個(gè)函數(shù) 《 數(shù) 據(jù) 結(jié) 構(gòu) 與 算 法 分 析 》 includeiostream class Point { public: Point(double i, double j) {x=i。 y=j。} virtual double Area() const{ return 。} // virtual:虛函數(shù) private: double x, y。 }。 class Rectangle:public Point { public: Rectangle(double i, double j, double k, double l)。 virtual double Area() const {return w*h。} // virtual:虛函數(shù) private: double w,h。 }。//其他函數(shù)同上例 《 數(shù) 據(jù) 結(jié) 構(gòu) 與 算 法 分 析 》 ? void fun(Point amp。s) ? { coutArea=()endl。 } ? int main() ? { ? Rectangle rec(, , , )。 ? fun(rec)。 ? } ?運(yùn)行結(jié)果 : ? Area=375 《 數(shù) 據(jù) 結(jié) 構(gòu) 與 算 法 分 析 》 int max(int a, int b, int c) { if (ba) a=b。 if (ca) a=c。 return a。 } 模板 (template) double max(float a, float b, float c) { if (ba) a=b。 if (ca) a=c。 return a。 } 這兩個(gè)重載的函數(shù),有很多相同的代碼,能不能充分利用這些相同的代碼?提高軟件的開(kāi)發(fā)效率 《 數(shù) 據(jù) 結(jié) 構(gòu) 與 算 法 分 析 》 函數(shù)模板 ?函數(shù)模板可以用來(lái)創(chuàng)建一個(gè)通用功能的函數(shù),以支持多種不同的形參,簡(jiǎn)化重載函數(shù)的函數(shù)體設(shè)計(jì)。 ?函數(shù)模版定義形式為: templatetypename 標(biāo)識(shí)符 函數(shù)定義 《 數(shù) 據(jù) 結(jié) 構(gòu) 與 算 法 分 析 》 函數(shù) 模板 (template) templatetypename T T max( T a, T b, T c) { if (ba) a=b。 if (ca) a=c。 return a。 } max就是 函數(shù)模板 Void main() { int a1=10,a2=15,a3= 20。 double a1=,a2=,a3= 。 max (a1,b1,c1) max (a2,b2,c2) } 編譯器從調(diào)用 max()時(shí)實(shí)參的類型自動(dòng)推導(dǎo)出函數(shù)模板的類型參數(shù)。實(shí)際執(zhí)行: int max (int a, int b, int c) double max(float a, float b, float c) 《 數(shù) 據(jù) 結(jié) 構(gòu) 與 算 法 分 析 》 類模板 ?同樣,使用類模板使用戶為類聲明一種模式,使得類中某些數(shù)據(jù)成員、某些成員函數(shù)的參數(shù)、某些成員函數(shù)的返回值能取任意類型,提高代碼使用率。 ?類模板聲明如下: template class 標(biāo)識(shí)符 類說(shuō)明 注意:模板類的成員函數(shù)必須是函數(shù)模板 ?模板類建立對(duì)象時(shí),聲明形式如下: 類模板名 class 標(biāo)識(shí)符 對(duì)象名 1,對(duì)象名 2…… 《 數(shù) 據(jù) 結(jié) 構(gòu) 與 算 法 分 析 》 類模板 (template) 17 8 26 4 13 18 29 Pigl Eeyo Roo Chri Kan Poot Tigg 二叉樹(shù):由結(jié)點(diǎn)組成,每一個(gè)節(jié)點(diǎn)包括值及其深度,以及下一級(jí)左右節(jié)點(diǎn)的位置。 《 數(shù) 據(jù) 結(jié) 構(gòu) 與 算 法 分 析 》 class string_BTnode { public: …… private: string val。 int t。 string_BTnode *lchild。 string_BTnode *rchild。 } class int_BTnode { public: …… private: int val。 int t。 int_BTnode *lchild。 int_BTnode *rchild。 } template class valType class BTnode { public: …… private: valType val。 int t。 int_BTnode *lchild。 int_BTnode *rchild。 } valType可以被任意設(shè)定來(lái)建立對(duì)象 ,如 BTnodeint bti。 或 BTnodestring bts。 BTnode就是 類模板
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1