C++期末考试复习题(理工)_第1页
C++期末考试复习题(理工)_第2页
C++期末考试复习题(理工)_第3页
C++期末考试复习题(理工)_第4页
C++期末考试复习题(理工)_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

一、选择题(共10题,每题2分,共20分)1.在C语言中,功能原型不能被识别A.函数的返回类型b .函数参数的数量c .函数参数类型d .函数函数2.在C程序中,对象之间的相互通信通过(B)进行A.继承实现b .调用成员函数实现c .封装实现d .函数重载实现3.对于任何类,析构函数的最大数量是(b) a.0b.1c.2d.3。5.友谊不能A.继承b .类之间的关系c .一个类和另一个类的成员函数之间的关系d .提高程序效率6.语句的功能。是建立一个流对象,并尝试打开和连接到薪资文件。DAT,和(a)A.如果文件存在,将文件写入指针定位在文件的末尾;如果文档不存在,请创建一个新文档如果文件存在,将其设置为空文件;如果文件不存在,则打开失败c .如果文件存在,将文件写入指针定位在文件的头部;如果文档不存在,请创建一个新文档如果文件存在,打开失败;如果文档不存在,请创建一个新文档下列陈述是正确的内联函数将函数的目标代码插入到运行时调用函数的每个地方内联函数是通过将该函数的目标代码插入到调用该函数的每个地方来编译的。类的内联函数必须在类内部定义。类d的内联函数必须通过添加关键字inline在类外部定义/当程序使用内向函数时,编译器用函数内的语句替换每个函数调用,从而消除函数调用的开销8.派生类对象p的基类成员a可以以p a的形式访问,其中a是(d)A.私人继承的公共成员b .公共继承的私人成员c .受保护的公共继承成员d .公共继承的公共成员/函数可以调用成员,对象不能调用9.在公共派生的情况下,对派生类对象和基类对象之间关系的错误描述是(c)A.派生类的对象可以被分配给基类的对象。派生类的对象可以初始化基类的引用C.派生类的对象可以直接访问基类的成员。派生类的对象地址可以分配给指向基类的指针/派生类的对象是不能访问基类的任何成员10.对于类定义甲级public : virtual void func 1() void func2() b :公共A级public : void func 1() cout B类func 1 _ _ .20.派生类派生自一个或多个先前定义的_ _基类_ _一、单项选择题(每题2分,共20分)1.派生类对象可以访问基类中的哪些成员(A)A.公共继承的公共成员b .公共继承的私人成员c .受保护的公共继承成员d .私人继承的公共成员2.定义析构函数时,应该注意(c)A.其名称与类名b完全相同,返回类型为void type c,不可见参数,不能重载d,函数体必须有delete语句。3.如果甲类被描述为乙类的朋友,(d)。A.a类成员是b类成员。b类成员是a类成员C.a类的成员函数不能访问b类的成员,b类不一定是a类的朋友。4.在下列程序的标记处要填写的正确句子是(c)#包括类库 public:void fun() cout Base : FuN fun();5.面向对象编程将数据和(a)放在一起,并将它们视为一个相互依赖、不可分割的整体。A.b .信息c .数据隐藏d .数据抽象6.在类中声明转换函数时,不能指定(a)。A.参数b .访问c .动作d .标识符7.在派生类中重新定义虚函数必须与(a)中的基类一致。A.参数类型b .参数名称c .操作内容d .赋值8.下面关于类在C语言中的继承和派生的陈述是错误的。A.基类的受保护成员可以直接用在公共派生类的成员函数中基类的受保护成员可以直接在私有派生类的成员函数中使用当公开派生时,基类所有成员的访问权限在派生类中保持不变基类的受保护成员可以直接用在保护派生类的成员函数中9.当赋值操作符重载时,它应该声明为(c)函数。A.朋友b .虚拟c .成员d .多态性10.语句of stream f(“salary . dat”,ios:3360 app | ios:3360二进制);的功能是创建一个流对象,尝试打开并连接到SALARY文件。DAT,和(a)A.如果文件存在,将文件写入指针定位在文件的末尾;如果文档不存在,请创建一个新文档如果文件存在,将其设置为空文件;如果文件不存在,则打开失败c .如果文件存在,将文件写入指针定位在文件的头部;如果文档不存在,请创建一个新文档如果文件存在,打开失败;如果文档不存在,请创建一个新文档二、填空(每空2分,共30分)1.假设AB是一个类,陈述AB(ABX);复制这个类的构造函数的原型描述。2.C支持的两种多态性分别是编译时的_ _ _ _ _ _和运行时的_ _ _ _ _ _。3.定义类的动态对象数组时,系统只能自动调用类的无参数_ _ _ _ _ _ _ _ _ _ _构造函数来初始化它。4.当运算符重载时,它的函数名由_ _运算符运算符_。当成员函数重载双目运算符时,左操作数是_ current对象_ _,右操作数是_ function参数_。C标准库中异常级别的根类是异常_ _ _ _ _;MFC类库中的大多数类都源自根类_ _ cobject _。在水平线下面填入适当的单词,完成类中成员函数的定义。classAint * a;public:A(intaa=0)a=_ new int(aa)_ _ _ _ _ _ _;/用aa初始化由A指向的动态对象 A() _ _ _ _ _ _ _ _删除一个_ _ _ _;/释放动态存储空间;7.支持面向对象编程的四个元素是封装、继承、抽象和多态。8.模板分为类模板和函数模板。一、单项选择题(每题2分,共20分)1.在以下选项中,类的复制构造函数的声明形式是(b)A.A : A(b)A : A(常量)c :3360 A(A)d 33603360 A(Aa)无效2.在下面对成员函数特性的描述中,错误是(a)A.成员函数不能为参数b设置默认值。成员函数可以重载c。成员函数可以是内联d。成员函数可以是静态的3.下面关于类模板的陈述是不正确的A.可以有多个构造函数b。类模板是模板类c的实例。类模板可以用来实例化多个模板类d。类模板可以有多个参数4.要使一个类成为抽象类,这个类应该具备以下条件:(a)A.至少一个纯虚函数b .至少一个虚函数c .只有一个纯虚函数d .只有一个虚函数5.运算符重载的正确描述是(d)A.当操作符重载时,C语言允许改变操作符的数量C.c语言允许在重载运算符时更改运算符的组合。当重载操作符时,直流语言允许改变操作符的原始功能6.下面的陈述是正确的。一个类的对象可以是另一个类的成员C.一个类可以在另一个类定义体d中定义。以上所有陈述都是正确的。7.有以下程序:#包括基类char c;public:BASE(char n):c(n)VirtualBASE()coutSetValue(5)相当于我的。设置值(5)9.在以下类型的函数中,C不是类的成员函数。A.构造函数b .析构函数c .友元函数d .复制构造函数10.派生类的对象在其基类成员中是可访问的。A.公共继承的公共成员b .公共继承的私人成员c .受保护的公共继承成员d .私人继承的公共成员二、填空(每空2分,共30分)1.定义内联函数使用的内联关键字和朋友使用的朋友。2.当一个派生类有多个基类时,这个继承方法被称为多重继承。3.当通过构造函数调用虚函数时,C系统使用静态连接进行调用。4.任何类中都允许三种类型的访问控制成员,即_ private d _ _、public_、protected _ _。数据成员和成员函数的默认类型是_ _ private d _ _。5.只有在公共继承的情况下,基类和派生类之间才能有赋值兼容规则。6.c标准库中异常级别的根类是在库的头文件中定义的在_ _ _ _ _ _。7.运算符重载的两种方法是成员函数和朋友函数。8.支持面向对象编程的四个元素是抽象、多态、封装和继承。一、单项选择题(每题2分,共20分)1.下面关于构造函数和新运算符之间的正确关系的语句是(d)A.新运算符不调用构造函数b。构造函数必须调用新运算符当生成一个新类的实例时,首先调用新的操作符,然后调用构造函数来初始化它当新操作符动态生成类的对象时,新操作符也会自动调用构造函数2.

温馨提示

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

评论

0/150

提交评论