c++选择题练习

上传人:小** 文档编号:91157574 上传时间:2019-06-26 格式:DOC 页数:8 大小:16.05KB
返回 下载 相关 举报
c++选择题练习_第1页
第1页 / 共8页
c++选择题练习_第2页
第2页 / 共8页
c++选择题练习_第3页
第3页 / 共8页
c++选择题练习_第4页
第4页 / 共8页
c++选择题练习_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《c++选择题练习》由会员分享,可在线阅读,更多相关《c++选择题练习(8页珍藏版)》请在金锄头文库上搜索。

1、继承练习1.在派生类对基类继承的传递性中,C 是错误的。(2分)A 在公有继承方式下,直接派生类对象可以直接调用基类中的公有成员函数,去访问基类的私有数据成员B 在公有继承方式下,间接派生类对象可以直接调用基类中的公有成员函数,去访问基类的私有数据成员C 在私有继承方式下,间接派生类对象可以直接调用基类中的公有成员函数,去访问基类的私有数据成员D 不管是私有继承还是公有继承,基类中的私有成员在派生类的作用域内都是不可能见的。2.下列有关继承和派生的叙述中,正确的是:C (2分)A 派生类不能访问通过私有继承的基类的保护成员B 多继承的虚基类不能够实例化C如果基类没有默认构造函数,派生类就应当定

2、义带形参的构造函数D 类的的析构函数和虚函数都不能够被继承,需要在派生类中重新实现第一次上机课3.设x和y均为bool量,则x&y为真的条件是(A)。(2分)A它们均为真B其中一个为真C它们均为假D其中一个为假4.设int x;,则经过(C)后,语句*px=0;可将x值置为0。(2分)A int * px;B int const * px=&x;C int * const px=&x;D const int * px=&x;第三次上机课2-1在以下哪种情形,复制构造函数会被调用。( B )(2分)A当一个对象采用引用方式,作为参数传递给一个函数B当一个函数采用值方式,返回一个对象C当一个对象赋

3、值给另一个对象D以上答案都不对2-2对于以下关于友元的说法(D)(2分)A如果函数fun被声明为类A的友元函数,则该函数成为A的成员函数B如果函数fun被声明为类A的友元函数,则该函数能访问A的保护成员,但不能访问私有成员C如果函数fun被声明为类A的友元函数,则fun的形参类型不能是A。D以上答案都不对2-3对于类之间的友元关系:(D)(2分)A如果类A是类B的友元,则B的成员函数可以访问A的私有成员B如果类A是类B的友元,则B也是A的友元。C如果类A是类B的友元,并且类B是类C的友元,则类A也是类C的友元。D以上答案都不对。2-4友元的作用是(A)(2分)A提高程序的运用效率B加强类的封装

4、性C实现数据的隐藏性D增加成员函数的种类2-5若有以下调用语句,则不正确的fun( )函数的首部是:(D)(2分)int main( ) int a50=1,n=20; fun(n,&a9); A void fun(int m,int x )B void fun(int s,int h41)C void fun(int p,int *s)D void fun(int n,int a)2-6若有如下函数调用语句: func(rec1,rec2+rec3,(rec4,rec5); 则该函数调用语句中,含有的实参个数是:(A)(2分)A 3B 4C 5D 有语法错误2-7给定以下类声明,哪个成员函数

5、可能改变成员变量data?(D)(2分)class A public: void f1 (int d); void f2 (const int &d); void f3 (int d) const;private: int data;A f1B f2C f3D f1和f22-8以下程序中,new语句干了什么。(C)(2分)int* num;num = new int* 20;A 分配了长度为20的整数数组空间,并将首元素的指针返回。B 分配了一个整数变量的空间,并将其初始化为20。C 分配了长度为20的整数指针数组空间,并将num0的指针返回。D 存在错误,编译不能通过。第二次上机课2-1重载

6、函数在调用时选择的依据中,错误的是(D)。(2分)A 函数的参数B 参数的类型C 函数的名字D 函数的类型2-2对定义重载函数的下列要求中,( C )是错误的。(2分)A要求参数的个数不同B要求参数中至少有一个类型不同C要求函数的返回值不同D要求参数个数相同时,参数类型不同2-3下列函数中,(C )不能重载。(2分)A成员函数B非成员函数C析构函数D构造函数2-4下列对重载函数的描述中,( A )是错误的。(2分)A重载函数中不允许使用默认参数B重载函数中编译根据参数表进行选择C不要使用重载函数来描述毫无相干的函数D构造函数重载将会给初始化带来多种方式2-5下列运算符中,( C )运算符不能重

7、载。(2分)A B C :D 2-6下列关于运算符重载的描述中,( D )是正确的。(2分)A运算符重载可以改变操作数的个数B运算符重载可以改变优先级C运算符重载可以改变结合性D运算符重载不可以改变语法结构第四次上机1-1因为静态成员函数不能是虚函数,所以它们不能实现多态。(5分)T 1-2函数的参数个数和类型都相同,只是返回值不同,这不是重载函数。(1分)T 1-3重载函数可以带有默认值参数,但是要注意二义性。(1分)T 1-4多数运算符可以重载,个别运算符不能重载,运算符重载是通过函数定义实现的。(1分)T 1-5对每个可重载的运算符来讲,它既可以重载为友元函数,又可以重载为成员函数,还可

8、以重载为非成员函数。(1分)F1-6对单目运算符重载为友元函数时,可以说明一个形参。而重载为成员函数时,不能显式说明形参。(1分)T 1-7重载运算符可以保持原运算符的优先级和结合性不变。(1分)T 1-8预定义的提取符和插入符是可以重载的。(5分)T 1-9模板函数可以用同名的另一模板函数重载。(5分)T 1-10重载operator+时,返回值的类型应当与形参类型一致。 比如以下程序中,operator+的返回值类型有错:class A int x;public:A(int t=0):x(t) int operator+(const A& a1) return x+a1.x; ;(5分)F1-11虚函数是用virtual 关键字说明的成员函数。(1分)T 1-12将构造函数说明为纯虚函数是没有意义的。(1分)T 1-13抽象类是指一些没有说明对象的类。(1分)F1-14动态绑定是在运行时选定调用的成员函数的。(1分)T

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号