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

正文內(nèi)容

面向?qū)ο蟮某绦蛟O(shè)計(jì)語言-wenkub

2023-01-22 01:58:24 本頁面
 

【正文】 char bookname[20]。 number=b。 如 class Record { private: char bookname[20]。 返回 10 類與對象的定義 在類中直接定義成員函數(shù)的情況一般適合于成員函數(shù)規(guī)模較小的情況 , 也就是說它們一般為內(nèi)聯(lián)函數(shù) , 即使沒有明確用 inline關(guān)鍵字 。 //給數(shù)據(jù)成員 bookname賦值 number=b。 返回 8 類與對象的定義 成員函數(shù)的定義 類中的成員函數(shù)可以在以下兩處定義: ( 1) 將成員函數(shù)的定義直接寫在類中 : 如:對于前面定義的圖書類 Record來說 , 其成員函數(shù)regist和 show的定義可直接寫在類的定義體中 。 //成員函數(shù) regist, 用于給 //各數(shù)據(jù)成員賦值 void show()。 ( 4) 當(dāng)定義類時(shí) , 當(dāng)未指明成員是哪部分時(shí) , 默認(rèn)是屬于 private成員 , 但一般不要采用默認(rèn)形式 。 這三部分可以任何順序出現(xiàn) ,且在一個(gè)類的定義中 , 這三部分并非必須同時(shí)出現(xiàn) 。 說明部分提供了對該類所有數(shù)據(jù)成員和成員函數(shù)的描述 , 而實(shí)現(xiàn)部分提供了所有成員函數(shù)的實(shí)現(xiàn)代碼 。 所謂 對象 就是客觀事物在計(jì)算機(jī)中的抽象描述;類 是對具有相似屬性和行為的一組對象的統(tǒng)一描述 。 了解友元函數(shù)與友元類的概念 、 定義方法及其作用 。理解并掌握派生類構(gòu)造函數(shù)的編寫要求,以及派生類對象的構(gòu)造過程和機(jī)理。 了解對象的作用域和生存期 。返回 1 第三章面向?qū)ο蟮某绦蛟O(shè)計(jì) 本章導(dǎo)讀 掌握類與對象的概念,類與對象的定義方法及二者間的區(qū)別。 理解并掌握構(gòu)造函數(shù) 、 析構(gòu)函數(shù) 、 拷貝構(gòu)造函數(shù) 、 默認(rèn)構(gòu)造函數(shù)和缺省參數(shù)的構(gòu)造函數(shù)的含義 、 定義方法以及在對象的構(gòu)造和撤消中的作用 。 掌握虛函數(shù)和多態(tài)性的概念,掌握虛函數(shù)的定義方法、調(diào)用方法及其在實(shí)現(xiàn)多態(tài)性方面所起到的作用。 了解運(yùn)算符重載及在程序中實(shí)現(xiàn)運(yùn)算符重載的方法 。 類的定義 C++的類是在結(jié)構(gòu)體的基礎(chǔ)上擴(kuò)充而來的 。 返回 4 類與對象的定義 類定義的一般形式為: class 類名 {private: 數(shù)據(jù)成員或成員函數(shù) protected: 數(shù)據(jù)成員或成員函數(shù) public: 數(shù)據(jù)成員或成員函數(shù) }。 ( 1) 如果數(shù)據(jù)成員或成員函數(shù)在類的 private部分 , 那么在類之外是不能存取的 , 只有類中的成員函數(shù)才能存取private的數(shù)據(jù)成員和成員函數(shù) 。 如:下例中定義描述圖書的類定義 class Record { private: //private成員 char bookname[20]。 //成員函數(shù) show, 顯示各數(shù)據(jù)成員的值 }。 class Record { private: char bookname[20]。 //給數(shù)據(jù)成員 number賦值 } void show() //成員函數(shù) show()的定義 { cout”名稱: ” booknameendl。 ( 2) 在類的定義體中只寫出成員函數(shù)的原型說明 , 而成員函數(shù)的定義寫在類的定義之后 , 這種情況比較適合于成員函數(shù)體較大的情況 , 但這時(shí)要求在定義成員函數(shù)時(shí) , 在函數(shù)的名稱之前加上其所屬性類名及作用域運(yùn)算符 “ ::” 。 int number。 } void Record::show() // show()是類 Record的成員函數(shù) { cout”名稱: ” booknameendl。 int number。 } void record::show() { cout”名稱: ” booknameendl。 每個(gè)對象的函數(shù)成員都通過指針指向同一個(gè)代碼空間 。 返回 17 類與對象的定義 //調(diào)用成員函數(shù) show, 顯示 book1對象的數(shù)據(jù)成員 //bookname和 number的值 ()。 =1001。 ()。 3. 任何對對象私有數(shù)據(jù)的訪問都必須通過向?qū)ο蟀l(fā)送消息來實(shí)現(xiàn) , 而且所發(fā)送的消息還必須是該對象能夠識別和接受的 。時(shí) , 成員函數(shù) regist除了接受兩個(gè)實(shí)參外 , 還接 返回 20 類與對象的定義 受了一個(gè)對象 book1的地址,這個(gè)地址被一個(gè)隱含的形參this指針?biāo)@取,它等同于執(zhí)行 this=amp。 thisnumber=b。 返回 21 類與對象的定義 對象賦值語句 對于同一個(gè)類生成的兩個(gè)對象 , 可以進(jìn)行賦值 ,其功能是將一個(gè)對象的數(shù)據(jù)成員賦值到另一個(gè)對象中去 , 賦值語句的左右兩邊各是一個(gè)對象名: 【 例 31】 對于類 example的兩個(gè)對象 obj1和 obj2,讓 obj2的成員數(shù)據(jù)的值等于 obj1的成員數(shù)據(jù)的值 ( 假定 obj1的成員數(shù)據(jù) num已經(jīng)存有數(shù)據(jù) 215) 。 } }。 obj2=obj1。 返回 24 類與對象的定義 如: class Desk //定義 Desk類 { public: int weight。 }。 int length。 void fn() { static Stool ss。 返回 26 類與對象的定義 2. 靜態(tài)對象 ( 局部靜態(tài)和全局靜態(tài) ) 其作用域是定義它的函數(shù)體或程序文件 , 其生存期是整個(gè)程序 。 4.類中成員的構(gòu)造次序是以類中聲明成員的次序進(jìn)行。 構(gòu)造函數(shù)的定義體可與其它成員函數(shù)成員一樣 , 放在類內(nèi)或類外都可 。 如: 【 例 32】 類 person包括 4個(gè)數(shù)據(jù)成員,用來記錄人員信息。 //年齡 int salary 。 }。 strcpy (tel, xtel) 。 cout 工資: salary endl 。 } 返回 31 構(gòu)造函數(shù)與析構(gòu)函數(shù) 程序的執(zhí)行結(jié)果是: 姓名:張立三 年齡: 25 工資: 850 電話: 45672314 在主函數(shù)中的 Person obj (張立三 , 25, 850,45672314);中完成了以下幾個(gè)功能: 1. 定義并生成了對象 obj。 【 例 33】 類 rec定義兩個(gè)重載函數(shù) , 其中一個(gè)是無參函數(shù) ,另一個(gè)是有參函數(shù) 。 返回 33 構(gòu)造函數(shù)與析構(gòu)函數(shù) public: Rec()。 Rec :: Rec () //第 1個(gè)構(gòu)造函數(shù)定義 { strcpy(bookname, 39。 } Rec :: Rec (char *a, int b ) //第 2個(gè)構(gòu)造函數(shù)定義 { strcpy(bookname, a)。 } void main() //主程序 { Rec mybook(“ Visual C++” ,10020)。 } 返回 35 構(gòu)造函數(shù)與析構(gòu)函數(shù) 程序的執(zhí)行結(jié)果是: bookname is :Visual C++ booknumber is:10020 bookname is :no name booknumber is:0 可見 , 當(dāng)出現(xiàn)構(gòu)造函數(shù)重載時(shí) , 其匹配方式同普通函數(shù)重載時(shí)的匹配方式 。 與變量定義相似 , 在用默認(rèn)構(gòu)造函數(shù)創(chuàng)建對象時(shí) , 如果創(chuàng)建的是全局對象或靜態(tài)對象 , 則對象的默認(rèn)值為 0,否則對象的初始值是不定的 。 Myclass(int i)。 Myclass y。 返回 40 構(gòu)造函數(shù)與析構(gòu)函數(shù) ( 2) 如果程序員在定義類時(shí) , 沒有為類提供析構(gòu)函數(shù) ,則系統(tǒng)會(huì)自動(dòng)創(chuàng)建一個(gè)默認(rèn)的析構(gòu)函數(shù) , 其形式為: ~類名 ( ) { } ( 3) 對于一個(gè)簡單的類來說 , 大多可以直接使用系統(tǒng)提供的默認(rèn)析構(gòu)函數(shù) 。 返回 41 構(gòu)造函數(shù)與析構(gòu)函數(shù) 【 例 34】 類 Teacher的構(gòu)造函數(shù)為 name申請存儲空間 , 在析構(gòu)函數(shù)中釋放該空間 。 //用 new為 name成員分配堆內(nèi)存 strcpy (name, i)。 //說明析構(gòu)函數(shù) ~Teacher ~ Teacher ( ) { delete name 。 }。 } 程序的執(zhí)行結(jié)果是: 執(zhí)行構(gòu)造函數(shù) Teacher 姓名:張立三 年齡: 25 執(zhí)行析構(gòu)函數(shù) ~Teacher 返回 44 構(gòu)造函數(shù)與析構(gòu)函數(shù) 拷貝構(gòu)造函數(shù) 拷貝構(gòu)造函數(shù)是 C++中引入的一種新的構(gòu)造函數(shù) 。 返回 45 構(gòu)造函數(shù)與析構(gòu)函數(shù) 【 例 35】 Example是一個(gè)人員信息類 。 public: example(int i, char *str ) // 構(gòu)造函數(shù)定義 { name=str。 } void list() // 定義顯示函數(shù) list { cout\數(shù)據(jù)成員 num的值 =numendlendl。 //使用拷貝構(gòu)造函數(shù)構(gòu)造 obj2 ()。 返回 48 構(gòu)造函數(shù)與析構(gòu)函數(shù) 一個(gè)類的對象作為另一個(gè)類的數(shù)據(jù)成員 一個(gè)類中的數(shù)據(jù)成員除了可以是 int, char, float等這些基本的數(shù)據(jù)類型外 , 還可以是某一個(gè)類的一個(gè)對象 。 ?? 類名 n 成員名 n。 這種方法稱為初始化表的方式調(diào)用構(gòu)造函數(shù) 。 在構(gòu)造新類的對象過程中 , 系統(tǒng)首先調(diào)用其子對象的構(gòu)造函數(shù) , 初始化子對象;然后才執(zhí)行類 X自己的構(gòu)造函數(shù) ,初始化類中的非對象成員 。 semeshours=100。 }。 nomeeting=0。 }。 即先調(diào)用 Student()構(gòu)造函數(shù) , 后調(diào)用 Teacher()構(gòu)造函數(shù) , 最后才執(zhí)行它自己的構(gòu)造函數(shù)的函數(shù)體 。 name[sizeof(name)1]=39。 strcpy(name, copy of )。 }。 }。 //此處調(diào)用 Tutor的構(gòu)造函數(shù) Tutor(Student amp。 refi=i。 //引用 refi }。 程序中使用初始化表是 x(215)。 }。 //調(diào)用 show顯示 x的值 ()。 但是 , 在類域中定義的變量不能使用 auto、register和 extern等修飾符 , 而且在類域中定義的函數(shù)也不能使用 extern修飾符 。 int y。 void myfunc()。 coutIn myfunc: x=x,y=yendl。 ()。 返回 67 構(gòu)造函數(shù)與析構(gòu)函數(shù) ( 2) 類中的成員擁有類作用域 , 因此在成員函數(shù)中可以直接引用類的數(shù)據(jù)成員 。 當(dāng)通過對象名時(shí) , 應(yīng)使用圓點(diǎn)成員選擇符 “ .”;當(dāng)通過指針時(shí) ,應(yīng)使用箭頭成員選擇符 “ ”。 所謂 繼承 ( inheritance) 就是利用已有的數(shù)據(jù)類型定義出新的數(shù)據(jù)類型 。 派生類不僅可以繼承原來類的成員 , 還可以通過以下方式產(chǎn)生新的成員: 返回 69 繼承和派生 ( 1) 增加新的數(shù)據(jù)成員; ( 2) 增加新的成員函數(shù); ( 3) 重新定義已有成員函數(shù); ( 4) 改變現(xiàn)有成員的屬性 。 訪問方式為 public方式時(shí) , 這種繼承稱為公有繼承 , 而訪問方式為 private方式時(shí) , 稱為私有繼承; ( 3) 基類名必須是程序中一個(gè)已有的類 。 ( 2) C++關(guān)于類的繼承方式的規(guī)定 , 如下表 : ① 按 private方式繼承 ( 即私有繼承 ) 時(shí) , 基類中的公有成員和保護(hù)成員在派生類中皆變?yōu)樗接谐蓡T 。 ④ 在公有繼承方式下 , 基類的公有成員和保護(hù)成員被繼承為派生類成員時(shí) ,
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1