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

正文內(nèi)容

[工學(xué)]面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言c第05章運(yùn)算符重載-wenkub

2022-10-28 22:20:53 本頁(yè)面
 

【正文】 +”運(yùn)算符的含義 。 String str1, str2, str3。 遺憾的是 , C僅支持很少量的運(yùn)算符重載 。 這符合我們數(shù)學(xué)常識(shí) 。 考慮整型和浮點(diǎn)型兩種加法運(yùn)算: int a = 1, b。 但是如果直接將運(yùn)算符作用在用戶(hù)定義類(lèi)型之上 , 那么編譯器將不能識(shí)別運(yùn)算符的語(yǔ)義 。面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言 C++ 電子科技大學(xué)計(jì)算機(jī)學(xué)院 1 第五章 運(yùn)算符重載 當(dāng)在使用一種程序設(shè)計(jì)語(yǔ)言編寫(xiě)程序時(shí) , 我們不僅要設(shè)計(jì)新的數(shù)據(jù)類(lèi)型 , 同時(shí)還要為新類(lèi)型設(shè)計(jì)運(yùn)算 。 因此 ,在這種情況下 , 我們需要一種特別的機(jī)制來(lái)重新定義作用在用戶(hù)定義類(lèi)型上的普通運(yùn)算符的含義 。 b = a + 2; float c = , d。 但對(duì)于 C編譯器來(lái)說(shuō) ,這兩個(gè)加法卻被翻譯成不同的指令 。 3 第五章運(yùn)算符重載 C++擴(kuò)充了 C運(yùn)算符重載的功能 , 允許已存在的預(yù)定義運(yùn)算符在不同的上下文中做出不同的解釋 。 str3 = (str2)。 這樣一來(lái) , 語(yǔ)義變得更加清晰和易懂 。 6 第五章 引論 考慮復(fù)數(shù)的加法運(yùn)算: class Complex { double re, im。 im = 。 return temp。 Complex obj3=(obj2)。 10 第五章 引論 考慮復(fù)數(shù)的加法運(yùn)算: class Complex { double re, im。 im = 。 return temp。 … } obj1+obj2 等價(jià)于: +(obj2) 12 第五章 引論 在 C++中 , 運(yùn)算符通過(guò)一個(gè)運(yùn)算符重載函數(shù)進(jìn)行重載 。 (4)重載運(yùn)算符的函數(shù) 不能有默認(rèn)的參數(shù) , 否則就改變了運(yùn)算符所需要的操作數(shù)的數(shù)目 。 因此 , 應(yīng)當(dāng)使重載運(yùn)算符的功能類(lèi)似于該運(yùn)算符作用于標(biāo)準(zhǔn)類(lèi)型數(shù)據(jù)時(shí)所實(shí)現(xiàn)的功能 。 19 第五章 引論 一元和二元運(yùn)算符 對(duì)任意一元運(yùn)算符 , 有: (1)成員函數(shù) 重載運(yùn)算符 type Class_Name::operator( ) { … } 設(shè) obj為 Class_Name的類(lèi)對(duì)象 , 則: ? 顯式調(diào)用方式: () ? 隱式調(diào)用方式: obj 或者 obj 20 第五章 引論 (2)友元函數(shù)重載運(yùn)算符 type operator(Class_Name Cobj) { … } ? 顯式調(diào)用方式: operator(obj) ? 隱式調(diào)用方式: obj 或者 obj ( 例 55/6) 21 第五章 引論 (1)成員函數(shù)重載運(yùn)算符 type Class_Name::operator(Class_Name Cobj) { … } ? 顯式調(diào)用方式: (obj2) ? 隱式調(diào)用方式: obj1 obj2 22 第五章 引論 (2)友元函數(shù)重載運(yùn)算符 type operator ( Class_Name Cobj1,Class_Name Cobj2) { … } ? 顯式調(diào)用方式: operator (obj1,obj2) ? 隱式調(diào)用方式: obj1 obj2 ( 例 57/8) 23 第五章 引論 3. 運(yùn)算符重載為成員函數(shù)和友元函數(shù)的選擇建議 24 nonmember All other binary operators member += –= /= *= ^= amp。 25 第五章 引論 ? 重載運(yùn)算符 重載 ++和 的前綴和后綴方式 ② 對(duì)于后綴方式 obj++: ? 成員函數(shù)重載 Class_Nam Class_Nam::operator++(int)。 通常用 0表示 。 它們的區(qū)別是 , 拷貝構(gòu)造函數(shù)要 創(chuàng)建 一個(gè)新對(duì)象 , 而賦值運(yùn)算符則是 改變 一個(gè)已存在的對(duì)象的值 。 class Array{int * p。 } ~Array( ) { delete [] p。 return p[idx]。nsize。 size+=off。 Array a_Array(10)。 a_Array[10]=10。 } 第五章 引論 在標(biāo)準(zhǔn)文件 , 有 2個(gè)標(biāo)準(zhǔn)的類(lèi)類(lèi)型:istream和 ostream( 流庫(kù)的介紹參考第八章 ) 。 include void main( ) { int num=10。 } 則輸出 10 ? 輸入運(yùn)算符? ”的第一個(gè)操作數(shù)是 cin,它實(shí)際上是標(biāo)準(zhǔn)類(lèi)類(lèi)型 istream的對(duì)象的引用 (它的定義在文件 iostream中 )。 只能使用 友元 函數(shù)進(jìn)行重載 。 public: … friend ostream amp。 friend istream amp。 }。 c) { os。 } istream amp。 return is。 } 第五章 引論 ? new和 delete 為一個(gè)對(duì)象動(dòng)態(tài)分配存儲(chǔ)區(qū) 可以為任何類(lèi)型 ( 除 void類(lèi)型外 ) 的數(shù)據(jù) 動(dòng)態(tài) 分配存儲(chǔ)空間; 當(dāng)為對(duì)象動(dòng)態(tài)分配存儲(chǔ)區(qū)時(shí) , 實(shí)際上是通過(guò)調(diào)用構(gòu)造函數(shù)實(shí)現(xiàn)的; 當(dāng)釋放動(dòng)態(tài)存儲(chǔ)區(qū)時(shí) , 是通過(guò)
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1