第四章類與對(duì)象_第1頁(yè)
第四章類與對(duì)象_第2頁(yè)
第四章類與對(duì)象_第3頁(yè)
第四章類與對(duì)象_第4頁(yè)
第四章類與對(duì)象_第5頁(yè)
已閱讀5頁(yè),還剩59頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院C+程序設(shè)計(jì)程序設(shè)計(jì)Microsoft Visul Microsoft Visul FoxproFoxpro The The + Programming Design + Programming Design 主講主講: :李春林李春林TELEL子信箱:電子信箱:JLHnLCLSINA.COM.CNJLHnLCLSINA.COM.CN編著鄭莉、董淵 等計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)清華大學(xué)出版社第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院2 對(duì)象?對(duì)象的創(chuàng)建?查看查看查

2、看4 子對(duì)象? 5 UML統(tǒng)一建模?1 什么是類?類的代碼格式? 程序中如何表示對(duì)象?3初始化問題?第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院一、類第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院現(xiàn)實(shí)世界人事管理姓名 性別 年齡 基本工資 調(diào)入 調(diào)出李四男李四男25 450 調(diào)入調(diào)入 調(diào)出調(diào)出 王五王五 男男 35 650 調(diào)入 調(diào)出張三男張三男34 750 調(diào)入調(diào)入調(diào)出調(diào)出抽象抽象抽象抽象730340120220730對(duì)象事物類基本基本 崗位崗位 保險(xiǎn)保險(xiǎn) 房租房租 實(shí)發(fā)實(shí)發(fā) 計(jì)算實(shí)發(fā)工資計(jì)算實(shí)發(fā)工資930340120220930計(jì)算實(shí)發(fā)計(jì)算實(shí)發(fā)計(jì)算實(shí)發(fā)

3、計(jì)算實(shí)發(fā)第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院?jiǎn)栴}域求解域現(xiàn)實(shí)世界計(jì)算機(jī)世界對(duì)象(現(xiàn)實(shí)世界) =問題域是由許多事物事物構(gòu)成的,這些事物我們抽象成對(duì)象。 比 如:我們所看到的真實(shí)的一個(gè)人-張三。 對(duì)象(計(jì)算機(jī)):把客觀世界中的對(duì)象映射到計(jì)算機(jī)世界中就是一個(gè)變量。worker對(duì)象(現(xiàn)實(shí))都有兩個(gè)共性: (1) 具有一定的狀態(tài)和特性。比如人的編號(hào),姓名,性別,基本工資。 (2) 每個(gè)對(duì)象對(duì)應(yīng)一組特定的操作。比如調(diào)入、調(diào)出、調(diào)工資。類:具有相同屬性特征的對(duì)象的集合。類(計(jì)算機(jī)) :用戶定義的抽象的數(shù)據(jù)類型. Pepole 直接映射。第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)

4、院理工分院院理工分院類與對(duì)象關(guān)系:是對(duì)對(duì)象的抽象和歸納,對(duì)象是類的實(shí)例。抽象實(shí)例化對(duì)象:劉麗靜態(tài)特征:劉麗 女 講師 3000.00動(dòng)態(tài)特征:授課 評(píng)職稱 調(diào)工資數(shù)據(jù)值執(zhí)行的操作方法名數(shù)據(jù)結(jié)構(gòu)類:教師屬性:姓名 性別 職稱 工資服務(wù):授課 評(píng)職稱 調(diào)工資抽象:從具體事物中被抽取出來(lái)的相對(duì)獨(dú)立的各個(gè)狀態(tài)、屬性、關(guān)系等。幫助我門認(rèn)識(shí)事物。 封裝(信息隱藏):是指將數(shù)據(jù)和基于數(shù)據(jù)的操作構(gòu)成一個(gè)不可分割的獨(dú)立實(shí)體。第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院 類的聲明即類的定義。聲明一個(gè)類的語(yǔ)法與結(jié)構(gòu)的聲明類似,其一般形式如下: class /class 定義類的關(guān)鍵字,類名:標(biāo)識(shí)

5、符 / 內(nèi)是類的說明部分,內(nèi)是類內(nèi) private: /說明成員是私有 public: /說明成員是公有 ; ; /類外1.類的聲明第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院class Pointclass Point private: int x,y; public: void setvalue(int x1,int y1); void display(); ; ;void Sample:setvalue(int x1,int y1) x=x1;y=y1;void Sample:display() cout “x=” x”,y=”yendl; 第4章 類與對(duì)象海南大海南

6、大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院2.訪問控制 通過類把系統(tǒng)內(nèi)部的數(shù)據(jù)隱蔽起來(lái),但不能把類中的全部成員通過類把系統(tǒng)內(nèi)部的數(shù)據(jù)隱蔽起來(lái),但不能把類中的全部成員與外界隔離與外界隔離. . 而把成員函數(shù)作為對(duì)外界的而把成員函數(shù)作為對(duì)外界的接口接口, ,程序中通過類的成員函數(shù)來(lái)訪問其內(nèi)部的數(shù)據(jù)成員。class 類名類名 private: 私有成員說明私有成員說明 public: 公有成員說明公有成員說明 ;程序中的任何函數(shù)都可訪問私有訪問權(quán)限,為默認(rèn)值,可缺省除本類中的成員函數(shù)及友元外,其他類外函數(shù)不能訪問公有訪問權(quán)限類的成員又分為:公有、私有和保護(hù)三類。類的成員又分為:公有、私有和保護(hù)三類。 第

7、4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院class Tperson private: char name10; int age; char sex; public: void print( ); ;問題:類中函數(shù)和普通的函數(shù)有什么不同?第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院成員函數(shù)類的成員函數(shù)用于對(duì)數(shù)據(jù)成員處理,又稱為“方法”。 : () 第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院class TDate public:public: void Set(int m, int d, int void Set(int m, int

8、 d, int y) / y) / 置日期值 month=m; day=d; year=y; month=m; day=d; year=y; void Print( ); void Print( ); / / 打印輸出 private:private: intint month; month; intint day; day; intint year; year; ;若將類外定義的成員函數(shù)說明為內(nèi)聯(lián)則要加上inline。內(nèi)聯(lián)成員函數(shù) 2.類內(nèi)定義,類內(nèi)定義,如果如果在類內(nèi)實(shí)現(xiàn)的自動(dòng)為內(nèi)聯(lián)函數(shù),體外若要成為內(nèi)聯(lián)加inline關(guān)鍵字.inline void TDate: Print( ) .第4章

9、 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院注注 意意class TDate public: private: int year(1998),month(4); ;錯(cuò)誤3 、由于類名是成員函數(shù)名的一部分,所以一個(gè)類的成員函數(shù)與另一個(gè)類的成員函數(shù)可同名第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院二、對(duì)象第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院定義對(duì)象類和對(duì)象的關(guān)系 相當(dāng)于普通數(shù)據(jù)類型與其變量的關(guān)系。 class class 類名類名 對(duì)象名;(2)(2)用類型名定義用類型名定義 private: public: 對(duì)象名;(1)(1)在聲明

10、類類型的同時(shí)定義對(duì)象:在聲明類類型的同時(shí)定義對(duì)象:class class 類名類名class Student stu1, stu2; 或 類名類名 對(duì)象名;Student stu1, stu2;class Studentclass Student private: char name; bool sex; int age; public: show()coutnamesexage; stu1,stu2;第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院對(duì)象引用class Timepublic: int hour;int minute; (2) (指針變量指針變量) .成員名成員名

11、指針變量成員名 (1) 對(duì)象名對(duì)象名.成員名成員名( p). hour; 或或p hourTime t,*p; p=&t;如何訪問如何訪問t的的hour?t.hour ;第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院/定義了幾個(gè)對(duì)象?類型?Student s,t; Time time1; Time *Ptime=&time1; Time time23; 注注 意意張三男s劉六男tPtimetime1地址地址單元單元1311212TimeTime0Time1Time2coutnamesexage;SHOW()coutnamesexx(*pp2).getx() 或

12、 pp2-getx()問題:?jiǎn)栴}:定義了幾個(gè)對(duì)象?訪問了對(duì)象的什么成員??x?y?p1?x?y?pp1?p0p1p2p2p?pp2x=x0;Setx()return x;getx()?第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院0在一個(gè)類的定義中,包含有( )成員的定義。 A. 數(shù)據(jù) B. 函數(shù) C. 數(shù)據(jù)和函數(shù) D. 數(shù)據(jù)或函數(shù)1在類作用域中能夠通過直接使用該類的( )成員名進(jìn)行訪問。 A. 私有 B. 公有 C. 保護(hù) D. 任何2在關(guān)鍵字public后面定義的成員為類的( )成員。 A. 私有 B. 公有 C. 保護(hù) D. 任何3在關(guān)鍵字private后面定義的成員為

13、類的( )成員。 A. 私有 B. 公有 C. 保護(hù) D. 任何4假定AA為一個(gè)類,a為該類公有的數(shù)據(jù)成員,x為該類的一個(gè)對(duì)象,則訪問x對(duì)象中數(shù)據(jù)成員a的格式為( )。 A. x(a) B. xa C. x-a D. x.a5假定AA為一個(gè)類,a()為該類公有的函數(shù)成員,x為該類的一個(gè)對(duì)象,則訪問x對(duì)象中函數(shù)成員a()的格式為( )。 A. x.a B. x.a() C. x-a D. x-a()6類中定義的成員默認(rèn)為( )訪問屬性。 A. public B. private C. protected D. friend一選擇一選擇第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分

14、院7假定AA為一個(gè)類,a為該類公有的數(shù)據(jù)成員,px為指向該類對(duì)象的一個(gè)指針,則訪問px所指對(duì)象中數(shù)據(jù)成員a的格式為( )。 A. px(a) B. pxa C. px-a D. px.a8假定AA為一個(gè)類,a為該類私有的數(shù)據(jù)成員,GetValue()為該類公有函數(shù)成員,它返回a的值,x為該類的一個(gè)對(duì)象,則訪問x對(duì)象中數(shù)據(jù)成員a的格式為( )。 A. x.a B. x.a() C. x-GetValue() D. x.GetValue()9假定AA為一個(gè)類,int a()為該類的一個(gè)成員函數(shù),若該成員函數(shù)在類定義體外定義,則函數(shù)頭為( )。 A. int AA:a() B. int AA:a()

15、 C. AA:a() D. AA:int a()10假定AA為一個(gè)類,a為該類公有的數(shù)據(jù)成員,若要在該類的一個(gè)成員函數(shù)中訪問它,則書寫格式為( )。 A. a B. AA:a C. a() D. AA:a()11若需要把一個(gè)類外定義的成員函數(shù)指明為內(nèi)聯(lián)函數(shù),則必須把關(guān)鍵字( )放在函數(shù)原型或函數(shù)頭的前面。 A. in B. inline C. inLine D. InLiner第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院1以面向?qū)ο蠓椒?gòu)造的系統(tǒng),其基本單位是_。2每個(gè)對(duì)象都是所屬類的一個(gè)_。3對(duì)象將其大部分實(shí)現(xiàn)細(xì)節(jié)隱藏起來(lái),這種機(jī)制稱為_。4對(duì)象是對(duì)問題域中客觀事物的_,

16、它是一組屬性和在這些屬性上操作的_。5類定義中,既包含數(shù)據(jù)成員,也包含_成員。6類中的數(shù)據(jù)成員的訪問屬性通常被指明為_。7類中的供外部調(diào)用定義的函數(shù)成員,其訪問屬性通常被定義為_。8對(duì)于類中定義的任何成員,其隱含訪問權(quán)限為_。9為了使類中的成員不能被類外的函數(shù)通過成員操作符訪問,則應(yīng)把該成員的訪問權(quán)限定義為_。10若在類的定義體中給出了一個(gè)成員函數(shù)的完整定義,則該函數(shù)屬于_函數(shù)。11若在類的定義體中只給出了一個(gè)成員函數(shù)的原型,則在類外給出完整定義時(shí),其函數(shù)名前必須加上_和兩個(gè)冒號(hào)分隔符。12假定AA是一個(gè)類,“AA* abc();”是該類中一個(gè)成員函數(shù)的原型,則在類外定義時(shí)的函數(shù)頭為_。二填空

17、二填空第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院三編寫程序三編寫程序1.編寫一個(gè)編寫一個(gè)cpu類,類中的數(shù)據(jù)成員有型號(hào)類,類中的數(shù)據(jù)成員有型號(hào)Type、頻率、頻率Frequency、狀態(tài)狀態(tài)state,還有運(yùn)行還有運(yùn)行run、掛起、掛起hang 、停止、停止Stop行為行為.并定義該類的并定義該類的兩個(gè)對(duì)象兩個(gè)對(duì)象amd和和intel2.定義一個(gè)窗口定義一個(gè)窗口windows類,類中的數(shù)據(jù)和方法成員至少要求分別類,類中的數(shù)據(jù)和方法成員至少要求分別寫出個(gè)寫出個(gè).并根據(jù)情況設(shè)定成員的訪問限制。并根據(jù)情況設(shè)定成員的訪問限制。第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院

18、院理工分院三、初始化問題?第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院構(gòu)造函數(shù)與析構(gòu) class Point private: int x,y; public: int getx()return x; ; 123p14p2void setx(int x0)x=x0;void sety(int y0)y=x0;void main() Point p1, p2; 問題:定義一個(gè)點(diǎn)類,希望它有初值如下,并希望能看到內(nèi)部的x值如何給出始的值? p1.setx(1);p2.setx(3) p1.sety(2);p2.sety(4) 能否象下面這樣那? p1.x=1;p2.x=3; p

19、1.y=2;p2.y=4;問題:申請(qǐng)的內(nèi)存空間不用了,什么時(shí)候清理了那?問題:申請(qǐng)的內(nèi)存空間不用了,什么時(shí)候清理了那?第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院 class Point private: int x,y; public: Point(int x,int y)x=x0;y=y0; Point()cout“調(diào)用析構(gòu)函數(shù)調(diào)用析構(gòu)函數(shù)”endl; int getx()return x; int gety()return y; void setx(int x0)x=x0; void sety(int y0)y=x0; ; void main() Point p1(1

20、,2), p2(3,4);問題:申請(qǐng)的內(nèi)存空間什么時(shí)候清理了那?問題:申請(qǐng)的內(nèi)存空間什么時(shí)候清理了那?第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院定義構(gòu)造函數(shù)的一般形式如下: class 類名 private: public: 類名(參數(shù)):數(shù)據(jù)成員1(參數(shù)),數(shù)據(jù)成員2(參數(shù))或類名(參數(shù))函數(shù)體;或類名(參數(shù));類名:類名(參數(shù)); 函數(shù)體; class Point private: int x,y; public: Point(int x,int y); x=x0;y=y0;Point:Point(int x,int y)第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院

21、理工分院院理工分院第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院 與其他成員函數(shù)定義一樣,兩種函數(shù)的定義可放在類體內(nèi),也可放在類體外構(gòu)造函數(shù)的定義析構(gòu)函數(shù)定義一般函數(shù)的定義第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院默認(rèn)?注注 意意第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院有如下類的定義:class Foo public : Foo(int v):value(v) / Foo() / private: Foo() / int value=1;/其中存在語(yǔ)法錯(cuò)誤的行是:A. B. C. D. 答案:() voidmain() Foo f

22、1; / Foo f2(); / Foo *f; / Foo f2; / Foo f3(3); / Foo() 和 Foo(int ) 分別調(diào)用了幾次:A. 1,3 B.3,1 C.4.1 D.3,2 其中存在語(yǔ)法錯(cuò)誤的行是:答案:()第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院拷貝構(gòu)造函數(shù)081012today08workday已有Tdate類的對(duì)象today,希望生成和它一樣的對(duì)象workday怎么辦?1012第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院定義拷貝構(gòu)造函數(shù)的一般形式如下: class 類名 private: public: 類名(類名

23、&對(duì)象); ;類名:類名(類名 &對(duì)象); 函數(shù)體; class Tdate private: public: Tdate(Tdate &td); ;Tdate:tdate(Tdate &td); year=td.year; month=td.month; day=td.day; main() Tdate today(1,2); Tdate worker(today);第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院拷貝構(gòu)造函數(shù)在三種情況下會(huì)被調(diào)用: 用類的一個(gè)對(duì)象去初始化該類的另一個(gè)對(duì)象時(shí)。 函數(shù)的形參是類的對(duì)象,調(diào)用函數(shù)進(jìn)行形參和實(shí)參的結(jié)合時(shí)

24、。 函數(shù)的返回值是類的對(duì)象,函數(shù)執(zhí)行完返回調(diào)用者時(shí)。調(diào)用拷貝構(gòu)造函數(shù) 調(diào)用拷貝構(gòu)造函數(shù)調(diào)用拷貝構(gòu)造函數(shù)第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院四、子對(duì)象? 第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院a為子對(duì)象注注 意意1212a c b1第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院:(形參表形參表): 對(duì)象成員對(duì)象成員1(形參表形參表), 對(duì)象成員對(duì)象成員2(形參表形參表), 類的初始化程序體類的初始化程序體組合類構(gòu)造函數(shù)定義形式:組合類構(gòu)造函數(shù)定義形式: priv

25、ate: char name10; int age; char sex; Tdate birthday; public: Tperson(char Name,int Age,char Sex,Tdate bd ): birthday(bd) name=Name;age=Age;sex=Sex; ;第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院#include class A private: int a1, a2; public: A(int i, int j) a1=i, a2=j; void print( ) couta1,a2endl;class B private:

26、A a; int b; public: B(int i, int j, int k): a(i,j), b(k) void print( ); ; void B:print( ) a.print( ); cout b endl; void main( ) B b(3, 4, 5); b.print( ); 分析程序的執(zhí)行結(jié)果?分析程序的執(zhí)行結(jié)果?那個(gè)先構(gòu)造?那個(gè)先清理的那個(gè)先構(gòu)造?那個(gè)先清理的?第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院#include class B private: A a; int b; public: B(int i, int j, int k):

27、 a(i,j), b(k) coutb; void print( ); ; void B:print( ) a.print( ); cout b endl; class A private: int a1, a2; public: A(int i, int j) a1=i, a2=j;coutA; void print( ) couta1,a2a C. s.a D. *s10假定AB為一個(gè)類,則執(zhí)行 “AB r1=r2;”語(yǔ)句時(shí)將自動(dòng)調(diào)用該類的( )。一選擇一選擇第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院 A. 無(wú)參構(gòu)造函數(shù) B. 帶參構(gòu)造函數(shù) C. 賦值重載函數(shù) D.

28、拷貝構(gòu)造函數(shù)11若需要使類中的一個(gè)指針成員指向一塊動(dòng)態(tài)存儲(chǔ)空間,則通常在( )函數(shù)中完成。 A. 析構(gòu) B. 構(gòu)造 C. 任一成員 D. 友元12當(dāng)類中的一個(gè)整型指針成員指向一塊具有n*sizeof(int)大小的存儲(chǔ)空間時(shí),它最多能夠存儲(chǔ)( )個(gè)整數(shù)。 A. n B. n+1 C. n-1 D. 113假定一個(gè)類的構(gòu)造函數(shù)為 “A(int aa, int bb) a=aa; b=aa*bb;”,則執(zhí)行 “A x(4,5);”語(yǔ)句后,x.a和x.b的值分別為( )。 A. 4和5 B. 5和4 C. 4和20 D. 20和514假定一個(gè)類的構(gòu)造函數(shù)為 “A(int aa=1, int bb=0

29、) a=aa; b=bb;”,則執(zhí)行 “A x(4);”語(yǔ)句后,x.a和x.b的值分別為( )。 A. 1和0 B. 1和4 C. 4和1 D. 4和015假定AB為一個(gè)類,則( )為該類的拷貝構(gòu)造函數(shù)的原型說明。 A. AB(AB x); B. AB(AB& x); C. void AB(AB& x); D. AB(int x);16假定一個(gè)類的構(gòu)造函數(shù)為 “B(int ax, int bx): a(ax), b(bx) ”,執(zhí)行 “B x(1,2),y(3,4);x=y;”語(yǔ)句序列后x.a的值為( )。 A. 1 B. 2 C. 3 D. 4第4章 類與對(duì)象海南大海南大學(xué)學(xué)

30、三三亞學(xué)亞學(xué)院理工分院院理工分院17假定一個(gè)類AB只含有一個(gè)整型數(shù)據(jù)成員a,當(dāng)用戶不定義任何構(gòu)造函數(shù)時(shí),系統(tǒng)為該類定義的無(wú)參構(gòu)造函數(shù)為( )。 A. AB() a=0; B. AB(int aa=0): a(aa) C. AB(int aa): a(aa) D. AB() 18假定一個(gè)類AB只含有一個(gè)整型數(shù)據(jù)成員a,用戶為該類定義的帶參構(gòu)造函數(shù)可以為( )。 A. AB() B. AB(): a(0) C. AB(int aa=0) a=aa; D. AB(int aa) 19對(duì)于任一個(gè)類,用戶所能定義的構(gòu)造函數(shù)的個(gè)數(shù)至多為( )。 A. 0 B. 1 C. 2 D. 任意個(gè)20對(duì)于任一個(gè)類,

31、用戶所能定義的析構(gòu)函數(shù)的個(gè)數(shù)至多為( )。 A. 0 B. 1 C. 2 D. 任意個(gè)第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院1一個(gè)類的_函數(shù)實(shí)現(xiàn)對(duì)該類對(duì)象的初始化功能。2一個(gè)類的_函數(shù)通常用于實(shí)現(xiàn)釋放該類對(duì)象中指針成員所指向的動(dòng)態(tài)存儲(chǔ)空間的任務(wù)。3當(dāng)用戶為一個(gè)類定義有_時(shí),則系統(tǒng)不會(huì)為該類再自動(dòng)生成一個(gè)默認(rèn)構(gòu)造函數(shù)。4假定用戶沒有給一個(gè)名為AB的類定義構(gòu)造函數(shù),則系統(tǒng)為其定義的構(gòu)造函數(shù)為_。5假定用戶沒有給一個(gè)名為AB的類定義析構(gòu)函數(shù),則系統(tǒng)為其定義的析構(gòu)函數(shù)為_。6在一個(gè)類中定義拷貝構(gòu)造函數(shù)的目的,是為了當(dāng)利用該類的一個(gè)對(duì)象初始化另一個(gè)對(duì)象時(shí),能夠避免這兩個(gè)對(duì)象的同

32、一指針同時(shí)指向同一塊_。7假定用戶為類AB定義了一個(gè)構(gòu)造函數(shù)“AB(int aa) a=aa;”,則系統(tǒng)(會(huì)/不會(huì))_為該類自動(dòng)定義一個(gè)無(wú)參構(gòu)造函數(shù)AB() 。8假定用戶為類AB定義了一個(gè)構(gòu)造函數(shù)“AB(int aa, char *bb=NULL):a(aa),b(bb)”,則該類中至少包含有_個(gè)數(shù)據(jù)成員。9假定用戶為類AB定義了一個(gè)構(gòu)造函數(shù)“AB(int aa) a=aa;”,該構(gòu)造函數(shù)實(shí)現(xiàn)對(duì)數(shù)據(jù)成員_的初始化。二填空二填空第4章 類與對(duì)象海南大海南大學(xué)學(xué)三三亞學(xué)亞學(xué)院理工分院院理工分院12假定用戶只為類AB定義了一個(gè)構(gòu)造函數(shù)“AB(int aa, int bb=0) a=aa; b=bb;

33、”,則定義該類的對(duì)象時(shí),其實(shí)參表中至多帶有_個(gè)實(shí)參。13假定用戶只為類AB定義了一個(gè)構(gòu)造函數(shù)“AB(int aa, int bb=0) a=aa; b=bb;”,則定義該類的對(duì)象時(shí),其實(shí)參表中至少帶有_個(gè)實(shí)參。14假定用戶為類AB定義了一個(gè)構(gòu)造函數(shù)“AB(int aa=0, int bb=0) a=aa; b=bb;”,則定義該類的對(duì)象時(shí),可以有_種不同的定義格式。15假定用戶只為類AB定義了一個(gè)構(gòu)造函數(shù)“AB():a(0),b(0)”,則定義該類對(duì)象x的定義語(yǔ)句“AB x();”是_(正確/錯(cuò)誤)的。16假定用戶只為類AB定義了一個(gè)構(gòu)造函數(shù)“AB():a(0),b(0)”,則定義該類對(duì)象x的定義語(yǔ)句“AB x;”是_(正確/錯(cuò)誤)的。17假定用戶只為類AB定義了一個(gè)構(gòu)造函數(shù)“AB():a(0),b(0)”,則定義該類對(duì)象x的定義語(yǔ)句“AB x(5);”是_(正確/錯(cuò)誤)的。18假定AB為一個(gè)類,則類定義體中的“AB(AB& x);”語(yǔ)句為該類_的原型語(yǔ)句。19假定AB為一個(gè)類,則該類的拷貝構(gòu)造函數(shù)的函數(shù)頭為_。10假定用戶為類AB定義了一個(gè)構(gòu)造函數(shù)“AB(int aa=0):a(aa)”,則定義該類的對(duì)象時(shí),可以有_種不同的定義格式。11假定用戶為類A

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論