C++选择题练习_第1页
C++选择题练习_第2页
C++选择题练习_第3页
C++选择题练习_第4页
C++选择题练习_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

继承练习1.在派生类对基类继承的传递性中,C 是错误的。(2分)A 在公有继承方式下,直接派生类对象可以直接调用基类中的公有成员函数,去访问基类的私有数据成员B 在公有继承方式下,间接派生类对象可以直接调用基类中的公有成员函数,去访问基类的私有数据成员C 在私有继承方式下,间接派生类对象可以直接调用基类中的公有成员函数,去访问基类的私有数据成员D 不管是私有继承还是公有继承,基类中的私有成员在派生类的作用域内都是不可能见的。2.下列有关继承和派生的叙述中,正确的是:C (2分)A 派生类不能访问通过私有继承的基类的保护成员B 多继承的虚基类不能够实例化C如果基类没有默认构造函数,派生类就应当定义带形参的构造函数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当一个对象赋值给另一个对象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加强类的封装性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给定以下类声明,哪个成员函数可能改变成员变量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重载函数在调用时选择的依据中,错误的是(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 )运算符不能重载。(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对每个可重载的运算符来讲,它既可以重载为友元函数,又可以重载为成员函数,还可以重载为非成员函数。(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

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论