[计算机类试卷]国家二级C++机试(继承和派生)模拟试卷9及答案与解析.doc
《[计算机类试卷]国家二级C++机试(继承和派生)模拟试卷9及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级C++机试(继承和派生)模拟试卷9及答案与解析.doc(24页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 C+机试(继承和派生)模拟试卷 9及答案与解析 一、选择题 1 有如下类声明: class XA int x; public: XA(int n)x=n; ; class XB: public XA int y; public: XB(int a, int b); ; 在构造函数 XB的下列定义中,正确的是 ( )。 ( A) XB: XB(int a, int b): x(a), y(b) ( B) XB: XB(int a, int b): XA(a), y(b) ( C) XB: XB(int a, int b): x(a), XB(b) ( D) XB: XB(int a,
2、int b): XA(a), XB(b) 2 下列有关类继承的叙述中,错误的是 ( )。 ( A)继承可以实现软件复用 ( B)虚基类可以解决由多继承产生的二义性问题 ( C)派生类构造函数要负责调用基类的构造函数 ( D)派生类没有继承基类的私有成员 3 定义派生类时,若 不使用关键字显式地规定采用何种继承方式,则默认方式为( )。 ( A)私有继承 ( B)非私有继承 ( C)保护继承 ( D)公有继承 4 下列关于继承方式的描述中,错误的是 ( )。 ( A)如果不显式地指定继承方式,缺省的继承方式是私有 (private) ( B)采用公有继承方式时,基类中的公有成员在派生类中仍然是公
3、有成员 ( C)采用保护继承方式时,基类中的保护成员在派生类中仍然是保护成员 ( D)采用私有继承方式时,基类中的私有成员在派生类中仍然是私有成员 5 若已定义了类 Vehicle,则下列派生类定义中,错误的是 ( )。 ( A) class Car: vehicle *类体略 * ; ( B) class Car: public car *类体略 * ; ( C) class Car: public Vehicle *类体略 * ; ( D) class Car: virtual public Vehicle *类体略 * ; 6 下列关于派生类的叙述中,错误的是 ( )。 ( A)派生类至
4、少要有一个基类 ( B)派生类中包括了从基类继承的成员 ( C)一个派生类可以作为 另一个派生类的基类 ( D)基类成员被派生类继承以后访问权限保持不变 7 有如下程序: #include using namespace std; class Base private: void fun1 () constcout using namespace std; class XX int x; public: XX(intxx=0): x(xx) int getX()return x; ; class YY: public XX int y; public: YY(int xx, int yy):
5、XX(xx), y(yy) int getV()return getX()+y; ; int main() YY c(3, 4); cout using namespace std; classA public: A()cout using namespace std; class Base int x; public; Baseint n=0); x(n)cout using namespace std; class Base public: Base(int x=0): valB(x)cout using namespace std; class Basel public: Base1(i
6、nt d) cout using namespace std; class Base public: void fun()coutfun(); 20 在 C+中,用于实现运行时多态性的是 ( )。 ( A)内联函数 ( B)重载函数 ( C)模板函数 ( D)虚函数 21 有如下程序 #include using namespace std; class A public: virtual void func1()coutfunc1(); P-func2(); return 0: 运行此程序,屏幕上将显示输出 ( )。 ( A) B1B2 ( B) A1A2 ( C) B1A2 ( D) A1
7、B2 22 有如下程序; #include using namespace std; class Base public: void output()coutoutput(); ptr-Print(); delete ptr; return 0; 程序的输出结果是 ( )。 ( A) 1B ( B) 1D ( C) 2B ( D) 2D 23 有如下程序: #include using namespace std; class GA public; virtual int f()return 1; ; class GB: public GA public; virtual int f()ret
8、urn 2; ; void show(GA g)cout using namespace std; class A public: virtual void f()cout using namespace std; class B public: B(int xx): x(xx)+count; x+=10; ) virtual void show()const coutshow(); delete ptr; return 0; 运行时的输出结果是 ( )。 ( A) 1_120 ( B) 2_120 ( C) 1_20 ( D) 2_20 26 有如下程序: #include using na
9、mespace std; class Base public: virtual void function1() coutfunction1(); p-function2(); return 0; ; 运行时的输出结果是 ( )。 ( A) 01 ( B) 21 ( C) 03 ( D) 23 27 有如下程序: #include using namespace std; class B public: virtual void f()coutf(); P-g(); int main() D obj; h(&obj); return 0; 运行这个程序的输出结果是 ( )。 ( A) DD (
10、 B) BB ( C) BD ( D) DB 国家二级 C+机试(继承和派生)模拟试卷 9答案与解析 一、选择题 1 【正确答案】 B 【试题解析】 此题考查的是派生类中构造函数的定义。派生类的构造首先要调用基类的构造函数,对基类成员初始化;然后对派生类中的新增成员初始化。格式为:派生类名 (构造函数形参表 )基类构造函数 (形参 表 )。 【知识模块】 继承和派生 2 【正确答案】 D 【试题解析】 此题考查的是类继承。派生类继承了基类的 (全部数据成员,私有成员 ),只是基类的私有成员在派生类中是隐藏的,只能在基类内部访问,故选项D错误。 【知识模块】 继承和派生 3 【正确答案】 A 【
11、试题解析】 继承的方式包括三种:公有继承,保护继承和私有继承。如果不显示的给出继承方式,缺省的类继承方式是私有继承 private。 【知识模块】 继承和派生 4 【正确答案】 D 【试题解析】 基类中的私 有成员在派生类中是隐蔽的,只能在基类内部访问。派生类中的成员不可以访问基类中的私有成员,只可以访问基类中的公有成员和保护成员。 【知识模块】 继承和派生 5 【正确答案】 B 【试题解析】 类 Car不能派生自它奉身。 【知识模块】 继承和派生 6 【正确答案】 D 【试题解析】 派生类对象对基类成员的访问权限: 对于公有继承,只有基类的公有成员可以被派生类对象访问,其他 (保护和私有 )
12、成员不能被访问。 对于私有继承和保护继承,基类中所有成员都不能被派生类对象访问。派生类对基类成 员的访问权限: 对于公有继承,基类中公有成员和保护成员可以访问,而基类中私有成员不能被访问。 对于私有继承和保护继承,也是基类中的公有成员和保护成员可以被派生类访问,而基类中的私有成员不能被访问。 【知识模块】 继承和派生 7 【正确答案】 B 【试题解析】 此题考查的是保护继承。因为 Derived以 protected方式继承了Base类,所以父类 Base中的公有成员和保护成员均成了 Derived类的保护成员,而 Base类的私有成员 Derived类不可访问。所以,主函数中通过 Deriv
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 机试 继承 派生 模拟 答案 解析 DOC
