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

正文內(nèi)容

[工學(xué)]四川大學(xué)c第十一章構(gòu)造函數(shù)和析構(gòu)函數(shù)-資料下載頁(yè)

2025-10-09 23:51本頁(yè)面
  

【正文】 lude class Tpoint { public: Tpoint(int xp,int yp) {x=xp。 y=yp。} Tpoint(Tpointamp。 p)。 //copy constructor declaration ~Tpoint() {cout“Destructor called.\n”。} int xcoord() {return x。} int ycoord() {return y。} private: int x,y。 }。 Tpoint::Tpoint(Tpointamp。 p) { x=。 y=。 cout“Copy_initialization constructor called.\n”。 } void main() { Tpoint p1(5,7)。 Tpoint p2(p1)。 cout“p2=”()“,”() endl。 } 結(jié)果: Copy_initialization constructor called. P2=5,7 Destructor called. Destructor called. 拷貝構(gòu)造函數(shù)除了用于使用已知對(duì)象的值創(chuàng)建一個(gè)同類的新對(duì)象外,還有兩個(gè)主要用處: 把對(duì)象作為實(shí)參數(shù)進(jìn)行函數(shù)調(diào)用時(shí),系統(tǒng)自動(dòng)調(diào)用拷貝構(gòu)造函數(shù)實(shí)現(xiàn)把對(duì)象值傳遞給形參對(duì)象; 當(dāng)函數(shù)的返回值為對(duì)象時(shí),系統(tǒng)自動(dòng)調(diào)用拷貝構(gòu)造函數(shù)對(duì)返回對(duì)象值創(chuàng)建一個(gè)臨時(shí)對(duì)象,然后再將這個(gè)臨時(shí)對(duì)象值賦給接收函數(shù)返回值的對(duì)象。 例如: 下面程序中共創(chuàng)建了 7 個(gè)對(duì)象,使用了 3 次拷貝構(gòu)造函數(shù)。 167。 拷貝構(gòu)造函數(shù)的其他用處 include “” Tpoint fun(Tpoint q)。 void main() { Tpoint M(12,20),P(0,0),S(0,0)。 Tpoint N(M)。 P=fun(N)。 S=M。 cout“P=”()“,”() endl。 cout“S=”()“,”() endl。 } Tpoint fun(Tpoint q) { cout“OK\n”。 int x=()+10。 int y=()+15。 Tpoint R(x,y)。 return R。 } //… include class Tpoint { public: Tpoint(int xp,int yp) {x=xp。 y=yp。} Tpoint(Tpointamp。 p)。 ~Tpoint() {cout“Destructor called.\n”。} int xcoord() {return x。} int ycoord() {return y。} private: int x,y。 }。 Tpoint::Tpoint(Tpointamp。 p) { x=。 y=。 cout“Copy_initialization constructor called.\n”。 } 輸出結(jié)果如下: Copy_initialization constructor called. Copy_initialization constructor called. OK Copy_initialization constructor called. Destructor called. Destructor called. Destructor called. P=22,35 S=12,20 Destructor called. Destructor called. Destructor called. Destructor called. 程序輸出結(jié)果說明程序中出現(xiàn)了三次調(diào)用構(gòu)造函數(shù): Tpoint N(M)。 //M 對(duì)象創(chuàng)建 N 對(duì)象 P=fun(N)。 //實(shí)參 N 對(duì)象被拷貝到形參 q對(duì)象 return R。 //函數(shù)返回時(shí),調(diào)用拷貝構(gòu)造函數(shù),用對(duì)象 R創(chuàng)建 // 一個(gè)臨時(shí)對(duì)象,保存 R 的數(shù)據(jù),在主函數(shù)中臨 // 時(shí)對(duì)象被釋放前,將它的內(nèi)容賦值到對(duì)象 P 中。 臨時(shí)對(duì)象 P 放 入 取 出 R fun()主函數(shù) 暫存區(qū) main()區(qū) 臨時(shí)對(duì)象起暫存作用的情況如下圖所示: 構(gòu)造函數(shù)是一種用于創(chuàng)建對(duì)象的特殊成員函數(shù) , 調(diào)用它為類對(duì)象分配空間 , 給它的數(shù)據(jù)成員賦初值 , 以及其他請(qǐng)求資源的工作 。 析構(gòu)函數(shù)是一種用于撤銷對(duì)象 , 回收對(duì)象占有資源的特殊成員函數(shù) , 它與構(gòu)造函數(shù)功能互補(bǔ) , 成對(duì)出現(xiàn) 。 每個(gè)類對(duì)象都必須在構(gòu)造函數(shù)中誕生 , 一個(gè)類可能定義一個(gè)或多個(gè)構(gòu)造函數(shù) , 編譯程序按對(duì)象構(gòu)造函數(shù)聲明中使用的形參數(shù)與創(chuàng)建對(duì)象的實(shí)參數(shù)比較 , 確定使用哪個(gè)構(gòu)造函數(shù) , 這與普通重載函數(shù)的使用方法類似 。 十 一 章 小 結(jié) 在包含有對(duì)象成員的類對(duì)象被創(chuàng)建時(shí),需要對(duì)對(duì)象成員進(jìn)行創(chuàng)建,相應(yīng)地要調(diào)用對(duì)象成員的構(gòu)造函數(shù)。 拷貝構(gòu)造函數(shù)用于由一個(gè)已知的對(duì)象創(chuàng)建一個(gè)新對(duì)象。 缺省構(gòu)造函數(shù)和缺省析構(gòu)函數(shù)用于在類中未顯式定義構(gòu)造函數(shù)和析構(gòu)函數(shù)的情況,以創(chuàng)建一個(gè)對(duì)象 (只分配數(shù)據(jù)成員的存儲(chǔ)空間,不能初始化值 ),自動(dòng)調(diào)用缺省的析構(gòu)函數(shù),以撤銷一個(gè)對(duì)象并回收資源。
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1