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

正文內(nèi)容

第八章多態(tài)性-文庫吧資料

2024-08-14 13:22本頁面
  

【正文】 復(fù)數(shù)。 再 進(jìn)一步 ,如果使用友元函數(shù) friend plex operator +(plex c1 , plexc2) 。 friend Complex operator + (Complex , double ) 。 } // 其他函數(shù)和主函數(shù)同例 81 36 C++語言程序設(shè)計(jì) 37 友元函數(shù)重載運(yùn)算符 +,有三種形式。 35 plex operator +(plex c1,plex c2) //運(yùn)算符重載友元函數(shù)實(shí)現(xiàn) { return plex(+, +)。 double imag。 //運(yùn)算符 重載為友元函數(shù) void display()。 } //構(gòu)造函數(shù) friend plex operator + (plex c1,plex c2)。 class plex //復(fù)數(shù)類聲明 { public: //外部接口 plex(double r=,double i=) { real=r。 ? 兩個(gè)操作數(shù)都是復(fù)數(shù)類的對(duì)象。 ? 后置單目運(yùn)算符 ++和 的重載函數(shù),形參列表中要增加一個(gè) int,但不必寫形參名。 C++語言程序設(shè)計(jì) 32 非成員運(yùn)算符函數(shù)的設(shè)計(jì) ? 如果需要重載一個(gè)運(yùn)算符,使之能夠用于操作某類對(duì)象的私有成員,可以此將運(yùn)算符重載為該類的非成員(通常為友元)函數(shù)。前置“ ++”格式為: 返回類型 類名 ::operator++(){……} 而后置“ ++”格式為: 返回類型 類名 ::operator++(int){……} 后置“ ++”中的參數(shù) int僅用作 區(qū)分 ,并無實(shí)際意義,可以給一個(gè)變量名,也可以不給變量名。 C++不允許重載三目運(yùn)算符 。 2. 當(dāng)用類的成員函數(shù)實(shí)現(xiàn)運(yùn)算符的重載時(shí) , 運(yùn)算符重載函數(shù)的參數(shù) ( 當(dāng)為雙目運(yùn)算符時(shí) ) 為一個(gè)或 ( 當(dāng)為單目運(yùn)算符時(shí) ) 沒有 。 } 28 程序運(yùn)行結(jié)果為: First time output: 23:59:59 Show myClock++: 23:59:59 Show ++myClock: 0:0:1 29 C++語言程序設(shè)計(jì) 30 小結(jié): 1. 運(yùn)算符重載函數(shù)的函數(shù)名必須為關(guān)鍵字 Operator加一個(gè)合法的運(yùn)算符。 coutShow ++myClock:。 coutShow myClock++:。 coutFirst time output:。 } 27 后置“ ++”中的參數(shù) int僅用作區(qū)分,并無實(shí)際意義,可以給一個(gè)變量名,也可以不給變量名。 ++(*this)。 就是在操作的這個(gè)對(duì)象。 } 26 可以省去構(gòu)造新的對(duì)象的資源和時(shí)間的消耗,提高效率。 Hour=Hour%24。 if(Minute=60) { Minute=Minute60。 if(Second=60) { Second=Second60。 25 Clockamp。 //后置單目運(yùn)算符重載 private: //私有數(shù)據(jù)成員 int Hour,Minute,Second。 operator ++()。 void ShowTime()。 運(yùn)算符重載 // includeiostream using namespace std。 ? 操作數(shù)是時(shí)鐘類的對(duì)象。 –經(jīng)重載后,表達(dá)式 oprd++ 相當(dāng)于 ++(0) 運(yùn)算符重載 C++語言程序設(shè)計(jì) 24 例 82 ? 運(yùn)算符前置 ++和后置 ++重載為時(shí)鐘類的成員函數(shù)。 } C++語言程序設(shè)計(jì) 22 運(yùn)算符成員函數(shù)的設(shè)計(jì) ? 前置單目運(yùn)算符 U –如果要重載 U 為類成員函數(shù),使之能夠?qū)崿F(xiàn)表達(dá)式 U oprd,其中 oprd 為 A類對(duì)象,則 U 應(yīng)被重載為 A 類的成員函數(shù),無形參。 image += 。 Complex::operator += (Complex amp。因?yàn)?缺省的賦值操作返回一個(gè)復(fù)數(shù)的引用,所以它可以進(jìn)行連續(xù)賦值 如: a=b=c=d 。 } 這種缺省的賦值操作格式對(duì)所有類是固定的,這種缺省的格式對(duì)復(fù)數(shù)是合適的,但對(duì)其他類缺省的賦值可能產(chǎn)生問題,那時(shí)需重載。 c){ real = 。對(duì)復(fù)數(shù)類 plex 如果沒有重載賦值運(yùn)算符 =,復(fù)數(shù)的賦值語義是: Complex amp。 ? 采用引用為參數(shù)時(shí),從理論上講實(shí)參必須為左值 ,不能為表達(dá)式,如 【 例 】 中 c=c+d是正確的,但 c=c+, ,但在這種情況下 VC++允許。c) ? 這里采用 plex對(duì)象的 引用 而不是對(duì)象本身,調(diào)用時(shí)不再重新分配內(nèi)存建立一個(gè)復(fù)制的對(duì)象,函數(shù)效率會(huì)更高。 程序輸出的結(jié)果為: c1=(5,4) c2=(2,10) c3=c1c2=(3,6) c3=c1+c2=(7,14) 18 C++語言程序設(shè)計(jì) 19 ? 使用引用類型變量作為運(yùn)算符重載函數(shù)的參數(shù),可以提高復(fù)數(shù)類型運(yùn)算的效率。 ()。 c3=c1+c2。 //使用重載運(yùn)算符完成復(fù)數(shù)減法 coutc3=c1c2=。 ()。 ()。 } int main() //主函數(shù) { plex c1(5,4),c2(2,10),c3。 return plex(,)。 =。 return plex(,)。 =+real。 //復(fù)數(shù)虛部 }。 //輸出復(fù)數(shù) private: //私有數(shù)據(jù)成員 double real。 //+重載為成員函數(shù) plex operator (plex c2)。i
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1