C++第四版习题解答-下.docx
上传人:13****51 上传时间:2024-09-10 格式:DOCX 页数:62 大小:80KB 金币:5 举报 版权申诉
预览加载中,请您耐心等待几秒...

C++第四版习题解答-下.docx

C++第四版习题解答-下.docx

预览

免费试读已结束,剩余 52 页请下载文档后查看

5 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

/NUMPAGES62《C++程序设计根底》〔第4版〕〔下〕习题与解答第6章类与对象6.1选择题1.假设有以下说明,那么在类外使用对象objX成员的正确语句是〔C〕。classX{inta;voidfun1();public:voidfun2();};XobjX;〔A〕objX.a=0;〔B〕objX.fun1();〔C〕objX.fun2();〔D〕X::fun1();2.假设有以下说明,那么对n的正确访问语句是〔B〕。classY{//…;public:staticintn;};intY::n;YobjY;〔A〕n=1;〔B〕Y::n=1;〔C〕objY::n=1;〔D〕Y>n3.假设有以下类Z说明,那么函数fStatic中访问数据a错误的选项是〔C〕。classZ{staticinta;public:staticvoidfStatic(Z&);};intZ::a=0;ZobjZ;〔A〕voidZ::fStatic(){objZ.a=1;}〔B〕voidZ::fStatic(){a=1;}〔C〕voidZ::fStatic(){thisa=0;}〔D〕voidZ::fStatic(){Z::a=0;}4.假设有以下类W说明,那么函数fConst的正确定义是〔A〕。classW{inta;public:voidfConst(int&)const;};〔A〕voidW::fConst(int&k)const{k=a;}〔B〕voidW::fConst(int&k)const{k=a++;}〔C〕voidW::fConst(int&k)const{cin>>a;}〔D〕voidW::fConst(int&k)const{a=k;}5.假设有以下类T说明,那么函数fFriend的错误定义是〔C〕。classT{inti;friendvoidfFriend(T&,int);};〔A〕voidfFriend(T&objT,intk){objT.i=k;}〔B〕voidfFriend(T&objT,intk){k=objT.i;}〔C〕voidT::fFriend(T&objT,intk){k+=objT.i;}〔D〕voidfFriend(T&objT,intk){objT.i+=k;}6.在类定义的外部,可以被访问的成员有〔C〕。〔A〕所有类成员〔B〕private或protected的类成员〔C〕public的类成员〔D〕public或private的类成员7.关于this指针的说确的是〔C〕。〔A〕this指针必须显式说明〔B〕定义一个类后,this指针就指向该类〔C〕成员函数拥有this指针〔D〕静态成员函数拥有this指针8.说明一个类的对象时,系统自动调用〔B〕;撤销对象时,系统自动调用〔C〕。〔A〕成员函数〔B〕构造函数〔C〕析构函数〔D〕友元函数9.下面对构造函数的不正确描述是〔C〕。〔A〕用户定义的构造函数不是必须的〔B〕构造函数可以重载〔C〕构造函数可以有参数,也可以有返回值〔D〕构造函数可以设置默认参数10.下面对析构函数的正确描述是〔C〕。〔A〕系统在任何情况下都能正确析构对象〔B〕用户必须定义类的析构函数〔C〕析构函数没有参数,也没有返回值〔D〕析构函数可以设置默认参数11.关于类的静态成员的不正确描述是〔D〕。〔A〕静态成员不属于对象,是类的共享成员〔B〕静态数据成员要在类外定义和初始化〔C〕静态成员函数不拥有this指针,需要通过类参数访问对象成员〔D〕只有静态成员函数可以操作静态数据成员12.在以下选项中,〔C〕不是类的成员函数。〔A〕构造函数〔B〕析构函数〔C〕友元函数〔D〕复制构造函数13.下面对友元的错误描述是〔D〕。〔A〕关键字friend用于声明友元〔B〕一个类中的成员函数可以是另一个类的友元〔C〕友元函数访问对象的成员不受访问特性影响〔D〕友元函数通过this指针访问对象成员14.假设classB中定义了一个classA的类成员Aa,那么关于类成员的正确描述是〔C〕。〔A〕在类B的成员函数中可以访问A类的私有数据成员〔B〕在类B的成员函数中可以访问A类的保护数据成员〔C〕类B的构造函数可以调用类A的构造函数做数据成员初始化〔D〕类A的构造函数可以调用类B的构造函数做数据成员初始化6.2阅读以下程序,写出运行结果1.#include<iostream>usingnamespacestd;classA{public:intf1();intf2();voidsetx(intm){x