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

正文內(nèi)容

c程序設(shè)計語言--第四講類-閱讀頁

2025-02-02 02:22本頁面
  

【正文】 用戶只能通過類接口訪問對象 , 因此 , 在類設(shè)計中必須提供足夠的公有接口以捕獲對象的全部行為 ,這正是類設(shè)計中的一個最基本的要求 。 而當(dāng)對象被定義時 ,由于對象的意義表達了現(xiàn)實世界的實體 , 所以一旦定義對象 , 就必須有一個有意義的初始值 , 在 C++中 , 在定義對象的同時 , 給該對象初始化的方法就是利用構(gòu)造函數(shù) 。 類中常量和引用的初始化: 初始化表 類中數(shù)據(jù)成員的初始化: 初始化表 類的對象初始化: 拷貝構(gòu)造函數(shù) 2022/2/9 面向?qū)ο蟪绦蛟O(shè)計 構(gòu)造函數(shù)和析構(gòu)函數(shù) ? 構(gòu)造函數(shù)和析構(gòu)函數(shù)是在類體中說明的兩種特殊的成員函數(shù)。 析構(gòu)函數(shù) 的功能是用來釋放一個對象的,在對象刪除前,用它來做一些清理工作 ,它與構(gòu)造函數(shù)的功能正好相反。 ~TDate()。 void Print()。 }。 month = m。 cout構(gòu)造函數(shù)已被調(diào)用。 } TDate::~TDate() { cout析構(gòu)函數(shù)被調(diào)用。 } int TDate::IsLeapYear() { return(year%4==0 amp。 year%100!=0) || (year%400==0)。 } 2022/2/9 面向?qū)ο蟪绦蛟O(shè)計 構(gòu)造函數(shù)的特點如下: 1) 構(gòu)造函數(shù)是成員函數(shù),函數(shù)體可寫在類體內(nèi),也可定在類體外。 ? 該函數(shù)不指定類型說明 ,它有隱含的返回值,該值由系統(tǒng)內(nèi)部使用。 3)可以定義多個構(gòu)造函數(shù)。 .。 2022/2/9 面向?qū)ο蟪绦蛟O(shè)計 析構(gòu)函數(shù)的特點如下: 1)析構(gòu)函數(shù)是成員函數(shù),函數(shù)體可寫在類體內(nèi),也可定在類體外。 3)一個類中只可能定義一個析構(gòu)函數(shù)。在下面兩種情況下,析構(gòu)函數(shù)會被自動調(diào)用。 如果一個對象被定義在一個函數(shù)體內(nèi),則當(dāng)這個函數(shù)結(jié)束時,該對象的析構(gòu)函數(shù)被自動調(diào)用。 當(dāng)一個對象是使用 new運算符被動態(tài)創(chuàng)建的,在使用 delete運算符釋放它時, delete將會自動調(diào)用析構(gòu)函數(shù)。 ) 返回 include class initi_data { private: int x。rx。 public: initi_data(int x1):rx(x),pi() { x=x1。 } }。 ( )。當(dāng)一個類的成員是某一個類的對象時,則稱該對象為對象成員(或子對象 )。 class B { private: A a。 在類中出現(xiàn)了子對象或稱對象成員時 , 該類的構(gòu)造函數(shù)要包含對子對象的初始化 , 通常 采用成員初始化表的方法來初始化子對象 。下面舉一例子說明成員初始化的構(gòu)造 。 public: A(int i, int j) { A1=i。 } void print() { coutA1“,”A2endl。 class B { private: A a。 public: B(int i, int j, int k):a(i, j), b(k) { } void print()。 void B::print() { ()。 } void main() { B b(6, 7, 8)。 } 該程序的輸出結(jié)果為: 6,7 8 2022/2/9 面向?qū)ο蟪绦蛟O(shè)計 其中, a(i, j), b(k)是成員初始化表,它有二項,前一項是給子對象 a初始化,其格式如下: 子對象名 (參數(shù)表 ) 后一項是給類 B的數(shù)據(jù)成員 b初始化。 給類 B的數(shù)據(jù)成員初始化。 定義一個拷貝構(gòu)造函數(shù)的方式是: 類名 ( const 類名 amp。 ( 2) 拷貝構(gòu)造函數(shù)的功能是用于實現(xiàn)對象值的拷貝 , 通過將一個同類對象的值拷貝給一個新對象 , 來完成對新對象的初始化 , 即用一個對象去構(gòu)造另外一個對象 。 1)明確表示由一個對象初始化另一個對象時,如: TPoint P2(P1)。 3)當(dāng)對象用為函數(shù)返回值時。作為該類的公有成員。 用普通構(gòu)造函數(shù)生成 obj1,用拷貝構(gòu)造函數(shù)生成 obj2。 int num。 num=i。x) // 拷貝構(gòu)造函數(shù)定義 { num=。 } }。 //調(diào)用函數(shù) Example(int i,char *str )構(gòu)造 obj1 example obj2(obj1)。 //顯示 obj2的值 ?? //其它程序部分 } 2022/2/9 面向?qū)ο蟪绦蛟O(shè)計 程序的執(zhí)行結(jié)果是: 數(shù)據(jù)成員 num的值 =215 數(shù)據(jù)成員 num的值 =215 說明: ( 1) 上例中在 main函數(shù)中的語句 Example obj2(obj1)。 ( 2) 如果程序員沒有為所設(shè)計的類提供顯式的拷貝構(gòu)造函數(shù) , 則系統(tǒng)會自動提供一個默認(rèn)的拷貝構(gòu)造函數(shù) ,其功能是:把作為參數(shù)的對象的數(shù)據(jù)成員逐個拷貝到目標(biāo)變量中 , 這稱為成員級復(fù)制 ( 或淺拷貝 ) 。 C++中的模板分為類模板和函數(shù)模板。 當(dāng)參數(shù)有多個時 , 需用逗號隔開 。 (4)類屬類的實例化 , 需要用下列格式的語句: 類模板名 類型實際參數(shù)表 對象名 ; ?類屬類定義實例參見教材 p276[程序 ]與 [程序 ] ?類屬類的實例化實例參見教材 p278[程序 ] 2022/2/9 面向?qū)ο蟪绦蛟O(shè)計 【 程序 9_1】 定義類模板 ABC,內(nèi)含成員函數(shù) set和 get。它們的數(shù)組元素數(shù)不同,顯示的結(jié)果也不同。 (2)在適當(dāng)?shù)奈恢脛?chuàng)建一個類模板的實例 , 即一個實實在在的類定義 , 同時創(chuàng)建該模板類的對象 。 2022/2/9 面向?qū)ο蟪绦蛟O(shè)計 小結(jié) 掌握類與對象的概念,類與對象的定義方法及二者間的區(qū)別。掌握類中成員的訪問機制和方法 。 理解并掌握構(gòu)造函數(shù) 、 析構(gòu)函數(shù) 、 拷貝構(gòu)造函數(shù) 、 默認(rèn)構(gòu)造函數(shù)和缺省參數(shù)的構(gòu)造函數(shù)的含義 、 定義方法以及在對象的構(gòu)造和撤消中的作用 。 掌握靜態(tài)成員的使用
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1