C++面向对象程序设计模拟试题完成(6)
C++面向对象程序设计模拟试题八
一、单项选择题(每小题2分,共40分) 1、关于C++与C语言关系的描述中,( )是错误的。
A.C语言是C++语言的一个子集 B.C语言与C++语言是兼容的
C.C++语言对C语言进行了一些改进 D.C++语言和C语言都是面向对象的 2、已知:int m=10; 下列表示引用的方法中,( )是正确的。
A.int &x=m; B.int &y=10; C.int &z; D.float &t=&m; 3、考虑下面的函数原型声明:void testDefaulParam(int a,int b=7,char z='*'); 下面函数调用中,不合法的是( )。A.testDefaulParam(5); B.testDefaulParam(5,8); C.testDefaulParam(5,'#'); D.testDefaulParam(0,0,'*');
4、系统在调用重载函数时往往根据一些条件确定哪个重载函数被调用,在下列选项中,不能作为依据的是( )。 A.函数的返回值类型 B.参数的类型 C.函数名称 D.参数个数 5、下列有关C++类的说法中,不正确的是( )。 A.类是一种用户自定义的数据类型
B.只有类中的成员函数或类的友元函数才能存取类中的私有成员 C.在类中,如果不做特别说明,所有成员的访问权限均为私有的 D.在类中,如果不做特别说明,所有成员的访问权限均为公用的
6、已知X类,则当程序执行到语句X array[3];时,调用了( )次构造函数。A.0 B.1 C.2 D.3 7、有关析构函数的说法,不正确的是( )。
A.析构函数有且仅有一个B.析构函数和构造函数一样可以有形参
C.析构函数的功能是在系统释放对象之前作一些内存清理工作D.析构函数无任何函数类型 8、类定义的内容允许被其对象无限制地存取的是( )。
A.private 部分 B. protected 部分 C.public 部分 D.以上都不对 9、关于常数据成员的说法,不正确的是( )。
A.常数据成员的定义形式与一般常变量的定义形式相同,只不过常数据成员的定义必须出现在类体中
B.常数据成员必须进行初始化,并且不能被更新C.常数据成员通过构造函数的成员初始化列表进行初始化 D.常数据成员可以在定义时直接初始化
10、运用运算符delete删除一个动态对象时( )。
A.系统首先为该动态对象调用构造函数,再释放其占用的内存 B.系统首先释放该动态对象占用的内存,再为其调用构造函数 C.系统首先为该动态对象调用析构函数,再释放其占用的内存 D.系统首先释放动态对象占用的内存,再为其调用析构函数
11、可以在类外用p.a的形式访问派生类对象p的基类成员a,其中a是( )。
A.私有继承的公用成员 B.公用继承的私有成员C.公用继承的保护成员 D.公用继承的公用成员 12、在公用继承方式下,有关派生类对象和基类对象的关系,不正确的叙述是( )。 A.派生类的对象可以赋给基类的对象B.派生类的对象可以初始化基类的引用
C.派生类的对象可以直接访问基类中的成员D.派生类的对象的地址可以赋给指向基类的指针 13、设置虚基类的目的是( )。A.简化程序 B.消除二义性 C.提高运行效率 D.减少目标代码 14、在C++中,用于实现动态多态性的是( )。A.内联函数 B.重载函数 C.模板函数 D.虚函数 15、不能说明为虚函数的是( )。A.析构函数 B.构造函数 C.类的成员函数 D.以上都不对 16、如果一个类至少有一个纯虚函数,那么就称该类为( )。
A.抽象类 B.派生类 C.纯基类 D.以上都不对 17、下面关于友元的描述中,错误的是( )。
A.友元函数可以访问该类的私有数据成员B.一个类的友元类中的成员函数都是这个类的友元函数 C.友元可以提高程序的运行效率D.类与类之间的友元关系可以继承 18、下列运算符中,( )运算符在C++中不能被重载。A.&& B.[] C.:: D.new 19、模板的使用实际上是将类模板实例化成一个( )。
A.函数 B.对象 C.类 D.抽象类
20、假定MyClass为一个类,则该类的拷贝构造函数的声明语句为( )。 A.MyClass(MyClass x) B.MyClass&(MyClass x) C.MyClass(MyClass &x) D.MyClass(MyClass *x)
二、填空题(前16个空,每空1分,后2个空,每空2分,共20分)
1、类和对象的关系可表述为:类是对象的 ,而对象则是类的 。
2、在C++中,三种继承方式的说明符号为 、 和 ,如果不加说明,则默认的继承方式为 。
3、如果只想保留公共基类的一个复制,就必须使用关键字 把这个公共基类声明为虚基类。
4、若要把void fun()定义为类A的友元函数,则应在类A的定义中加入语句 。 5、类的静态成员分为 和 。
6、运算符重载要求保持其原来的操作数个数、 、 和语法结构。
7、通过关键字 可以声明模板,通过关键字 指定函数模板的类型参数,有几个类型参数就有几个类型关键字。
8、列出C++中两种用户自定义的数据类型: 、 。
9、构造函数的作用是 。
10、后置自增运算符“++”重载为类的成员函数(设类名为A)的形式为 。 三、阅读下面3个程序,写出程序运行时输出的结果:(共13分) 1、#include
p=a; a=b; b=p; }
void exchange(int &a,int &b,int &c) { if(a
int main()
{ int a=12,b=89,c=56; exchange(a,b,c);
cout<<\ return 0; }
2、#include
Date(int,int,int); Date(int,int); Date(int); Date();
void display(); private:
int month, day, year;
}; Date::Date(int m,int d,int y):month(m),day(d),year(y) { } Date::Date(int m,int d):month(m),day(d) {year=2009;} Date::Date(int m):month(m){day=1; year=2010; } Date::Date() {month=1; day=1; year=2010; }
void Date::display(){cout< { Date d1(12,31,2009); Date d2(12,31); Date d3(1); Date d4; d1.display(); d2.display(); d3.display(); d4.display(); return 0; } 3、#include { public: A(){cout<<\ ~A(){cout<<\class B: public A { public: B(){cout<<\ ~B(){cout<<\class C : public B { public: C(){cout<<\ ~C(){cout<<\int main() { C c1; return 0; } 四、编程题(共27分) 1、(10分) 已知复数类Complex的声明如下: class Complex {publ
…… 此处隐藏:4410字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [综合文档]应答器设备技术规范(征求意见稿)A1
- [综合文档]教师 2012年高考政治试题按考点分类汇
- [综合文档]保险公司的总经理助理竞职演说
- [综合文档]卫生应急大练兵大比武活动考试--题库(
- [综合文档]徐州经济技术开发区总体规划环境影响报
- [综合文档]汉语拼音表(带声调)
- [综合文档]二年级 上 思维训练( 1~18)
- [综合文档]特色学校五年发展规划
- [综合文档]机床经常出现报警“X1轴定位监控”
- [综合文档]《电子技术基础》21.§5—2、3、4 习题
- [综合文档]浙江省深化普通高中课程改革
- [综合文档]CRISP原理 - 图文
- [综合文档]2017年电大社会调查研究与方法形考答案
- [综合文档]浅析建筑施工安全毕业论文
- [综合文档]《回忆我的母亲》名师教案
- [综合文档]装饰装修工程监理规划
- [综合文档]三下乡心得体会-文艺
- [综合文档]柱计算长度系数 - 图文
- [综合文档]全流程思考,提高燃电系统热电转换率--
- [综合文档]2018年嘉定区中考物理一模含答案
- 433M车库门滚动码遥控器
- 8、架空线路施工规范
- 大学四年声乐学习的体会
- 新北师大版五年级数学上册《轴对称再认
- 部编版五年级上册语文第六单元小结复习
- 小学六年级英语形容词用法
- 第2课 抗美援朝保家卫国 课件01(岳麓版
- 2015年天津大学运筹学基础考研真题,考
- 微机计算机控制技术课后于海生(第2版)
- 安全教育实践活动
- Delphi程序设计教程_第1章_Delphi概述
- 第八讲 工业革命与启蒙运动
- 《中华人民共和国药典》2005年版二部勘
- 科粤版九年级化学2.3构成物质的微粒(1)
- 西师大版数学三年级下册《长方形、正方
- ch6_冒泡排序演示
- 第4章 冲裁模具设计
- 浙江中小民营企业员工流失论文[终稿]
- 再议有线数字电视市场营运模式
- 昆明供水工程监理大纲




