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

正文內(nèi)容

面向?qū)ο蟮某绦蛟O(shè)計(jì)語言-文庫吧在線文庫

2025-02-09 01:58上一頁面

下一頁面
  

【正文】 //說明構(gòu)造函數(shù) Teacher 返回 42 構(gòu)造函數(shù)與析構(gòu)函數(shù) Teacher(char *i, int a ) { name=new char[strlen(i)+1] 。 void show()。 ( 2) 拷貝構(gòu)造函數(shù)的功能是用于實(shí)現(xiàn)對(duì)象值的拷貝 , 通過將一個(gè)同類對(duì)象的值拷貝給一個(gè)新對(duì)象 , 來完成對(duì)新對(duì)象的初始化 , 即用一個(gè)對(duì)象去構(gòu)造另外一個(gè)對(duì)象 。x) // 拷貝構(gòu)造函數(shù)定義 { num=。 ( 2) 如果程序員沒有為所設(shè)計(jì)的類提供顯式的拷貝構(gòu)造函數(shù) , 則系統(tǒng)會(huì)自動(dòng)提供一個(gè)默認(rèn)的拷貝構(gòu)造函數(shù) , 其功能是:把作為參數(shù)的對(duì)象的數(shù)據(jù)成員逐個(gè)拷貝到目標(biāo)變量中 , 這稱為成員級(jí)復(fù)制 ( 或淺拷貝 ) 。 但應(yīng) 注意: 如果類 A的構(gòu)造函數(shù)為有參函數(shù)時(shí) , 則在程序中必須在類 B的構(gòu)造函數(shù)的括號(hào)后面加一 “ : ” 和被調(diào)用的類 A的構(gòu)造函數(shù) , 且調(diào)用類 A的構(gòu)造函數(shù)時(shí)的實(shí)參值必須來自類 B的形參表中的形參 。 include class Student { public: Student() { cout”construct student.\n”。 返回 53 構(gòu)造函數(shù)與析構(gòu)函數(shù) class Tourpair {public: Tourpair() {cout”construct tourpair.\n”。 } 其執(zhí)行結(jié)果是: construct student. construct teacher. construct tourpair. back in main. 由此可見:主函數(shù) main()運(yùn)行開始時(shí) , 遇到要?jiǎng)?chuàng)建Tourpair類的對(duì)象 , 于是調(diào)用其構(gòu)造函數(shù) Tourpair( ) ,該構(gòu)造啟動(dòng)時(shí) , 首先分配對(duì)象空間 ( 包含一個(gè) Student對(duì) 返回 55 構(gòu)造函數(shù)與析構(gòu)函數(shù) 象 、 一個(gè) Teacher對(duì)象和一個(gè) int型數(shù)據(jù) ) ,然后根據(jù)其在類中聲明的對(duì)象成員的次序依次調(diào)用其構(gòu)造函數(shù) 。s) { cout構(gòu)造 copy of endl。 } protected: Student student。 { ten=10。 返回 61 構(gòu)造函數(shù)與析構(gòu)函數(shù) 【 例 38】 類 employee中包括私有數(shù)據(jù)成員 x, 和 2個(gè)公有函數(shù)成員 example、 show。 } // 主函數(shù) void main() { //生成對(duì)象并為 x賦予初始值 employee obj。 include class Myclass { private: int x。 } void Myclass::myfunc() { int x=9,y=10。 由于不同類的成員函數(shù)可以具有相同的名字 , 因此 , 需要用作用域運(yùn)算符 “ :: ” 來指明該成員函數(shù)所屬的類 。 返回 68 繼承和派生 繼承的概念 一個(gè)類的數(shù)據(jù)成員和成員函數(shù) , 有些是類本身自己定義的 , 有一些是可繼承的或通過模板生成的 。 返回 70 繼承和派生 單繼承 1. 定義派生類 在基類的基礎(chǔ)上定義其派生類的定義形式為: class 派生類名:訪問方式 基類名 { 派生類中的新成員 } 其中: ( 1) 派生類名由用戶自己命名; ( 2) 訪問方式即繼承方式 , 可以為 public 或 private, 默認(rèn)為 private方式 。 這與私有成員的定義是一致的 , 符合數(shù)據(jù)封裝的思想 。 它的函數(shù)成員只有 set1, 用于設(shè)置數(shù)據(jù)成員 posi_x、 posi_y和 area的值 。 } }。 void main() { //用 Build_2生成對(duì)象 obj 返回 76 繼承和派生 Build_2 obj。 返回 78 繼承和派生 ( 3) 在創(chuàng)建派生類的對(duì)象時(shí) , 由于派生類的對(duì)象包含了基類的數(shù)據(jù)成員 , 因此派生類的構(gòu)造函數(shù)除初始化其自身定義的數(shù)據(jù)成員外 , 還必須對(duì)基類中的數(shù)據(jù)成員進(jìn)行初始化 , 也就是說 , 派生類的構(gòu)造函數(shù)要負(fù)責(zé)調(diào)用基類的構(gòu)造函數(shù) 。 返回 80 繼承和派生 include class Ccircle //定義圓類 {protected: double radius。 void setheight(double heightval) { height=heightval。 cout圓柱體底面積 :::area()endl。 ( 3) 如果確實(shí)想通過 Ccylinder的對(duì)象訪問從基類Ccircle繼承過來的 area()函數(shù) , 則必須使用作用域運(yùn)算符 “ ::”顯式指明 。 定義多重繼承類的方式如下: class 派生類名:訪問方式 基類名 , 訪問方式 基類名 ?? { ?? }; 其中:訪問方式為 public或 private, 功能同單一繼承 。 返回 89 繼承和派生 class B2 { protected: int b2。 cout”erived class is called “ 。 } }。 虛基類是這樣的一個(gè)基類:它雖然被一個(gè)派生類間接地多次繼承 , 但派生類卻只繼承一份該基類的成員 , 這樣 , 避免了在派生類中訪問這些成員時(shí)產(chǎn)生二義性 。 class D: public B1,public B2 {protected: int d。 include “” class B1 {protected: int b1。 如:在上例中的 main函數(shù)中 , () () 其中 , cyclinder是 Ccylinder的一個(gè)對(duì)象 , circle是 Ccircle的一個(gè)對(duì)象 。 在主函數(shù)中 , 通過基類和派生類的不同對(duì)象 ,分別調(diào)用了這兩個(gè) area()函數(shù) 。 Ccylinder::Ccylinder(double radiusval, double heightval): Ccircle(radiusval) //調(diào)用 Ccircle類的構(gòu)造函數(shù)對(duì) radius初始化 //派生類 Ccylinder的構(gòu)造函數(shù)不但初始化自身定義的成員height, 而且通過調(diào)用基類的構(gòu)造函數(shù) Ccircle( ) 初始化從基類繼承來的數(shù)據(jù)成員 radius { height=heightval。 } 返回 81 繼承和派生 double area() const { return *radius*radius。 ( 6) 在定義派生類的對(duì)象時(shí) , 系統(tǒng)首先執(zhí)行基類的構(gòu)造函數(shù) , 然后執(zhí)行派生類的構(gòu)造函數(shù) 。 } 程序執(zhí)行的結(jié)果是: 經(jīng)度: 100 緯度: 200 高度: 400 面積: 300 由此可見:派生類 Build_2中已繼承了基類 Build_1中的數(shù)據(jù)成員 posi_x、 posi_y、 area和基類中的成員函數(shù) set1,并同時(shí)增加了新的成員 height和成員函數(shù) set disp。 cout 緯度: posi_yendl。 int area。類的不可訪問成員總是從某個(gè)基類派生來的 , 它要么是基類的私有成員 , 要么是基類的不可訪問成員 。 2. 基類與派生類之間的關(guān)系 ( 1) 派生類不僅擁有屬于自己的數(shù)據(jù)成員與成員函數(shù) ,還保持了從基類繼承來的數(shù)據(jù)成員與成員函數(shù);同時(shí)派生類可對(duì)一些繼承來的函數(shù)重新定義 , 以適應(yīng)新的要求 。 另外 , 在 C++中擴(kuò)充派生類成員的方法是非常靈活的 。 ( 3) 類中的成員擁有類的作用域 , 如果要從類外訪問類的成員時(shí) , 則必須通過對(duì)象名或指向?qū)ο蟮闹羔?。test。} void print()。 由于在一個(gè)類中既可定義變量 ( 數(shù)據(jù)成員 ) , 又可定義函數(shù) ( 成員函數(shù) ) , 所以 , 類域在許多方面與文件域相似 。 void show()。refi。 //同上 Tutor tutor(st2)。 } protected: char name[40]。 strncpy(name,pName,sizeof(name))。 int nomeeting。 float gpa。 并且這幾個(gè)參數(shù)表的中的參數(shù)均來自參數(shù)表 0, 另外 , 初始化 X的非對(duì)象成員所需的參數(shù) , 也由參數(shù)表 0提供 。 類名 2 成員名 2。 //調(diào)用函數(shù) Example(int i,char *str )構(gòu)造 obj1 example obj2(obj1)。 int num。 ()。 }。即最后構(gòu)造的對(duì)象先被析構(gòu) 。 } void main() { Myclass x(20)。 只要一個(gè)類定義了一個(gè)構(gòu)造函數(shù) ( 不一定是無參構(gòu)造函數(shù) ) , C++編譯系統(tǒng)就不再提供默認(rèn)的構(gòu)造函數(shù) 。 coutbooknumber is:numberendl。 }。 返回 32 構(gòu)造函數(shù)與析構(gòu)函數(shù) 構(gòu)造函數(shù)的重載 如果一個(gè)類中出現(xiàn)了兩個(gè)以上的同名的成員函數(shù)時(shí),稱為類的成員函數(shù)的重載。 cout 年齡: age endl 。 void disp () 。而當(dāng)對(duì)象被定義時(shí) , 由于對(duì)象的意義表達(dá)了現(xiàn)實(shí)世界的實(shí) 返回 28 構(gòu)造函數(shù)與析構(gòu)函數(shù) 體 , 所以一旦定義對(duì)象 , 就必須有一個(gè)有意義的初始值 ,在 C++中 , 在定義對(duì)象的同時(shí) , 給該對(duì)象初始化的方法就是利用構(gòu)造函數(shù) 。 它也是在程序運(yùn)行前 ( 即在主函數(shù)運(yùn)行前 ) 只構(gòu)造一次 。 //定義全局對(duì)象 Stool sa。 int length。 ()。 } 通過以上手段就確保了不同對(duì)象調(diào)用成員函數(shù)時(shí)訪問的是不同對(duì)象的數(shù)據(jù) , 而它們之間沒有干擾 。 4. 上例中 , 在對(duì)象調(diào)用 (“C++編程教程 ” , 1001)。 ()。 //調(diào)用成員函數(shù) regist, 給 book2的兩個(gè)數(shù)據(jù)成員賦值 (“C++語言參考 ” , 1002)。 number=b。 number=b。 返回 10 類與對(duì)象的定義 在類中直接定義成員函數(shù)的情況一般適合于成員函數(shù)規(guī)模較小的情況 , 也就是說它們一般為內(nèi)聯(lián)函數(shù) , 即使沒有明確用 inline關(guān)鍵字 。 返回 8 類與對(duì)象的定義 成員函數(shù)的定義 類中的成員函數(shù)可以在以下兩處定義: ( 1) 將成員函數(shù)的定義直接寫在類中 : 如:對(duì)于前面定義的圖書類 Record來說 , 其成員函數(shù)regist和 show的定義可直接寫在類的定義體中 。 ( 4) 當(dāng)定義類時(shí) , 當(dāng)未指明成員是哪部分時(shí) , 默認(rèn)是屬于 private成員 , 但一般不要采用默認(rèn)形式 。 說明部分提供了對(duì)該類所有數(shù)據(jù)成員和成員函數(shù)的描述 , 而實(shí)現(xiàn)部分提供了所有成員函數(shù)的實(shí)現(xiàn)代碼 。 了解友元函數(shù)與友元類的概念 、 定義方法及其作用 。 了解對(duì)象的作用域和生存期 。 理解并掌握構(gòu)造函數(shù) 、 析構(gòu)函數(shù) 、 拷貝構(gòu)造函數(shù) 、 默認(rèn)構(gòu)造函數(shù)和缺省參數(shù)的構(gòu)造函數(shù)的含義 、 定義方法以及在對(duì)象的構(gòu)造和撤消中的作用 。 了解運(yùn)算符重載及在程序中實(shí)現(xiàn)運(yùn)算符重載的方法 。 返回 4 類與對(duì)象的定義 類定義的一般形式為: class 類名 {private: 數(shù)據(jù)成員或成員函數(shù) protected: 數(shù)據(jù)成員或成員函數(shù) public: 數(shù)據(jù)成員或成員函數(shù) }。 如:下例中定義描述圖書的類定義 class Record { private: //private成員 char bookname[20]。 class Record { private: char bookname[20]。 ( 2) 在類的定義體中只寫出成員函數(shù)的原型說明 , 而成員函數(shù)的定義寫在類的定義之后 , 這種情況比較適合于成員函數(shù)體較大的情況 , 但這時(shí)要求在定義成員函數(shù)時(shí) , 在函數(shù)的名稱之前加上其所屬性類名及作用域運(yùn)算符 “ ::” 。 } void Record::show() // show()
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1