c++类与对象练习题

c++类与对象练习题

ID:26911617

大小:82.50 KB

页数:17页

时间:2018-11-30

c++类与对象练习题_第1页
c++类与对象练习题_第2页
c++类与对象练习题_第3页
c++类与对象练习题_第4页
c++类与对象练习题_第5页
资源描述:

《c++类与对象练习题》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、1.概念填空题1.1类定义的关键字是class。类的数据成员通常指定为私有成员。类的函数成员通常指定为公有成员,指定为公有的类成员可以在类对象所在域中的任何位置访问它们,类的私有和保护只能被该类的成员函数或友元函数访问。1.2类的访问限定符包括public、private和protected。类成员默认的访问方式是private。访问限定符在类中无先后次序,各限定符允许(允许/不允许)多次出现。1.3构造函数的任务是建立对象。类中可以有多个构造函数,它们由参数区分。如果类说明中没有给出构造函数,则C++编译器会提供构造函数,该函数不完成(完成/不完成)对象初始化工作。1

2、.4复制构造函数的参数是对象的复制,当程序没有给出复制构造函数时,编译系统会提供默认复制构造函数,完成类对象的复制。复制构造函数被调用情况有3种。1.5析构函数在对象释放时被自动调用。类中没有定义析构函数时,编译系统会提供一个默认的析构函数。该函数不完成(完成/不完成)具体对象的清理工作。2.简答题2.1为什么说类与对象的概念是客观世界的反映?2.2简单解释什么是面向对象程序设计的封装性。2.3引用作为函数参数时为什么能实现两个实参之间的数据交换?为什么对应实参不能为引用?为什么返回值为引用的函数可以作为左值?2.4什么是默认的构造函数?默认的构造函数可以有多少个?2.

3、5复制构造函数用于哪3个方面?2.6为什么在友元函数的函数体内访问对象成员时,必须用对象名加运算符”.”再加对象成员名?2.7类的静态数据成员与函数中的静态成员有何异同?2.8类的成员函数在什么情况下应该定义为私有的?这样做的目的是什么?2.9友元关系有何性质?友元关系的优点和缺点各有哪些?3.选择题3.1数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是(B)。A.类B.对象C.函数体D.数据块3.2类的实例化是指(B)。A.定义类B.创建类的对象C.指明具体类D.调用类的成员3.3下列说法中正确的是(B)。A.类定义中只能说明函数成员的

4、函数头,不能定义函数体B.类中的函数成员可以在类体中定义,也可以在类体之外定义C.类中的函数成员在类体之外定义时必须要与类声明在同一文件中D.在类体之外定义的函数成员不能操作该类的私有数据成员3.4有如下类定义:classsample{intn;public:sample(inti=0):n(i){}voidsetValue(intn0);};下列关于setValue成员函数的实现中,正确的是(B)。A.sample::setValue(intn0){n=n0;}B.voidsample::setValue(intn0){n=n0;}C.voidsetValue(int

5、n0){n=n0;}D.setValue(intn0){n=n0;}3.5在下面的类定义中,错误的语句是(C)。classsample{public:sample(intval);//①~sample();//②private:inta=2.5;//③public:sample();//④};A.①B.②C.③D.④3.6类的构造函数被自动调用执行的情况是在创建该类的(C)。A.成员函数时B.数据成员时C.对象时D.友元函数时3.7(A)是析构函数的特征。A.一个类中只能定义一个析构函数B.析构函数名与类名不同C.析构函数的定义只能在类体内D.析构函数可以有一个或多个参

6、数3.8在下列函数原型中,可以作为类AA构造函数的是(D)。A.voidAA(int);B.intAA();C.AA(int)const;D.AA(int)3.9关于成员函数特征的下述描述中,(A)是错误的。A.成员函数一定是内联函数B.成员函数可以重载C.成员函数可以设置参数的默认值D.成员函数可以是静态的3.10不属于成员函数的是(B)。A.静态成员函数B.友元函数C.构造函数D.析构函数3.11已知类A是类B的友元,类B是类C的友元,则(d)。A.类A一定是类C的友元B.类C一定是类A的友元C.类C的成员函数可以访问类B的对象的任何成员D.类A的成员函数可以访问类

7、B的对象的任何成员3.12有如下类定义:classAA{inta;public:intgetRef()const{return&a;}//①返回类型为int,return&a为地址intgetValue()const{returna;}//②voidset(intn)const{a=n;}//③常函数不能修改成员friendvoidshow(AAaa)const{cout<

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。