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

正文內(nèi)容

c運(yùn)算符重載(編輯修改稿)

2025-08-21 17:37 本頁面
 

【文章內(nèi)容簡介】 ? 如果要重載 B 為類的成員函數(shù),使之能夠?qū)崿F(xiàn)表達(dá)式 oprd1 B oprd2,其中 oprd1 為 A 類對象,則 B 應(yīng)被重載為 A 類的成員函數(shù),形參類型應(yīng)該是 oprd2 所屬的類型。 ? 經(jīng)重載后,表達(dá)式 oprd1 B oprd2 相當(dāng)于 B(oprd2)。 30 ? 例 定義一個字符串類 String,用來處理不定長的字符串,重載相等、大于、小于關(guān)系運(yùn)算符,用于兩個字符串的等于、大于、小于的比較運(yùn)算。 ? 操作數(shù) :兩個操作數(shù)都是字符串類的對象。 ? 規(guī)則 :兩個字符串進(jìn)行比較。 ? 將“ ” 、 “ =” 、“ ” 運(yùn)算重載為字符串類的成員函數(shù)。 31 ( 1)先建立一個 String類 include include class String // String 是用戶自己指定的類名 { public: String() { p=NULL。 } String( char *str ) 。 void display()。 private: char *p。 }。 32 String::String(char *str) { p=str。 } void String::display() {coutp。} int main() {String string1(Hello),string2(Book)。 ()。 coutendl。 ()。 return 0。 } 33 先編寫出簡單的程序框架,編寫和調(diào)試都比較方便。構(gòu)造函數(shù)是把定義對象時的實(shí)參的地址賦予數(shù)據(jù)成員 p, p是指向?qū)崊⒌闹羔?。程序?qū)崿F(xiàn)了建立對象、輸出字符串對象的功能。程序運(yùn)行結(jié)果分別輸出 Hello Book ( 2)有了這個基礎(chǔ)后,再增加所需的其他內(nèi)容,先重載大于運(yùn)算符。程序如下: 34 include include class String { public: String (){ p=NULL。} String (char *str)。 friend bool operator(String amp。string1,String amp。string2)。 private: char *p。 }。 String::String(char *str) { p=str。 } 35 void String::display() { coutp。 } bool operator(String amp。string1,String amp。string2) { if(strcmp(,)0) return true。 else return false。 } int main() { String string1(Hello),string2(Book)。 cout(string1string2)endl。 return 0。 } 36 運(yùn)算符重載函數(shù)定義為友元函數(shù),函數(shù)值是布爾類型,在函數(shù)中調(diào)用了 strcmp庫函數(shù), “ Hello”, “ Book”,程序運(yùn)行結(jié)果是 1。 ( 3)擴(kuò)展到對另外三個運(yùn)算符重載 在 String類體中聲明三個重載函數(shù)是友元函數(shù),并編寫相應(yīng)的函數(shù)。 37 include include class String { public: String(){p=NULL。} String(char *str)。 friend bool operator (String amp。string1,String amp。string2)。 friend bool operator (String amp。string1,String amp。string2)。 friend bool operator==(String amp。string1,String amp。string2)。 void display()。 private: char *p。 }。 38 String::String(char *str) {p=str。} void String::display() {coutp。} bool operator(String amp。string1,String amp。string2) { if(strcmp(,)0) return true。 else return false。 } 39 bool operator(String amp。string1,String amp。string2) { if(strcmp(,)0) return true。 else return false。 } bool operator==(String amp。string1,String amp。string2) { if(strcmp(,)==0) return true。 else return false。 } 40 int main() { String string1(Hello),string2(Book),string3(Computer)。 cout(string1string
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1