[作业与试题集]南开19秋学期(1709、1803、1809、1903、1909)《面向对象程序设计》在线作业【标准答案】

上传人:住在山****ck 文档编号:171294692 上传时间:2021-03-05 格式:DOCX 页数:5 大小:14.09KB
返回 下载 相关 举报
[作业与试题集]南开19秋学期(1709、1803、1809、1903、1909)《面向对象程序设计》在线作业【标准答案】_第1页
第1页 / 共5页
[作业与试题集]南开19秋学期(1709、1803、1809、1903、1909)《面向对象程序设计》在线作业【标准答案】_第2页
第2页 / 共5页
[作业与试题集]南开19秋学期(1709、1803、1809、1903、1909)《面向对象程序设计》在线作业【标准答案】_第3页
第3页 / 共5页
[作业与试题集]南开19秋学期(1709、1803、1809、1903、1909)《面向对象程序设计》在线作业【标准答案】_第4页
第4页 / 共5页
[作业与试题集]南开19秋学期(1709、1803、1809、1903、1909)《面向对象程序设计》在线作业【标准答案】_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《[作业与试题集]南开19秋学期(1709、1803、1809、1903、1909)《面向对象程序设计》在线作业【标准答案】》由会员分享,可在线阅读,更多相关《[作业与试题集]南开19秋学期(1709、1803、1809、1903、1909)《面向对象程序设计》在线作业【标准答案】(5页珍藏版)》请在金锄头文库上搜索。

1、南开19秋学期(1709、1803、1809、1903、1909)面向对象程序设计在线作业【标准答案】19秋学期(1709、1803、1809、1903、1909)面向对象程序设计在线作业-0002试卷总分:100 得分:100一、单选题 (共 35 道试题,共 70 分)1.假定MyClass为一类,执行MyClass a,b(2),*p2;语句时会自动调用该类构造函数()次。A.5B.4C.3D.22.下列虚基类的声明中正确的是( )。A.virtual class B:publicB.class virtual B:public AC.class B: virtual public AD

2、.class B:public A virtual3.执行语句“string str(4.在保护继承中,基类中的私有成员作为派生类的()。A.私有成员B.公有成员C.保护成员D.不可访问5.已知函数原型:void f(int a, int b=3,char c=6.“ Max(x,y,z);C.float x; int y, z; Max(x,y,z);D.const int x,y,z; Max(x,y,z);10.下面关于友元的描述中,错误的是( )。A.类与类之间的友元关系可以继承B.友元可以提高程序的运行效率C.友元函数可以访问该类的私有数据成员D.一个类的友元类中的成员函数都是这个类

3、的友元函数11.空类的声明( )是正确的。A.class类名;B.class类名C.class类名;D.class类名12.下面对静态数据成员的描述中,正确的是()。A.静态数据成员可以直接用类名访问B.静态数据成员可以在类体内进行初始化C.静态数据成员不能受private控制符的作用D.静态数据成员不可以被该类的对象调用13.下面说法中正确的是( )。A.构造函数可以指定返回类型,而析构函数不能指定任何返回类型,即使是void类型也不可以B.构造函数与析构函数同名,只要名字前加了一个求反符号()C.一个类只能定义一个析构函数,但可以定义多个构造函数D.一个类只能定义一个构造函数,但可以定义多

4、个析构函数14.有关构造函数说法不正确的是( )。A.构造函数的名字和类的名字一样B.构造函数有且只有一个C.构造函数无任何函数类型D.在创建对象时,系统自动调用构造函数15.在C+中,通过()的机制可以对原有的类进行扩充和完善以适应新的需要。A.重载B.继承C.封装D.多态16.以下为重载函数的一组函数声明的是()。A.void print(int); void print(double);B.void mm(); int mm();C.void fun(int); int fun(int);D.int max(int,int); int min(int,int);17.以成员函数方式重载运

5、算符“18.下列关于运算符重载的描述中,()是正确的。A.运算符重载可以改变结合性B.运算符重载可以改变操作数的个数C.运算符重载可以改变优先级D.运算符重载不可以改变语法结构19.下列关于类的继承描述中,( )是错误的。A.继承描述类的层次关系,派生类可以具有与基类相同的属性和方法B.派生类可以访问基类的所有数据成员,也能调用基类的所有成员函数C.派生类也是基类,但基类不一定具有派生类的全部属性和方法D.一个基类可以有多个派生类,一个派生类可以有多个基类20.下面对构造函数的不正确描述是( )。A.系统可以提供默认的构造函数B.构造函数可以重载C.构造函数可以设置默认参数D.构造函数可以有参

6、数,所以可以有返回值21.下列( )不是构造函数的特征。A.构造函数的函数名与类名相同B.构造函数必须指定类型说明C.构造函数可以重载D.构造函数可以设置默认参数22.下列关于成员函数特征的描述中,错误的是()。A.成员函数可以重载B.成员函数可以设置参数的默认值C.成员函数可以是静态的D.成员函数一定是内联函数23.静态数据成员初始化在()进行,而且前面不加static,以免与一般静态变量或对象相混淆。A.类体外B.类体内C.构造函数内D.内联函数内24.下面关于类概念的描述中,( )是错误的。A.类是抽象数据类型的实现B.类是创建对象的样板C.类是具有共同行为的若干对象的统一描述体D.类就

7、是C语言中的结构体类型25.关于函数模板,描述错误的是( )。A.类模板的成员函数都是函数模板B.函数模板的实例化由编译器实现C.函数模板必须由程序员实例化为可执行的函数模板D.一个类定义中,只要有一个函数模板,则这个类是类模板26.关于对象成员的构造函数的调用顺序,说法正确的是( )。A.以上说法都不对B.与析构函数的调用顺序相同C.与它们在类中说明顺序相同D.与它们在成员初始化列表中给出的顺序相同27.用于类中虚成员函数说明的关键字( )。A.virtualB.publicC.protectedD.private28.对于拷贝构造函数,正确的描述是()。A.必须为每个类定义拷贝构造函数B.

8、当定义了类的构造函数时,如果要使用拷贝构造函数,则必须定义拷贝构造函数C.如果要使用拷贝构造函数,则必须在类中先定义D.在C+语言中,如果不自定义类的拷贝构造函数,则每个类都有默认的拷贝构造函数29.下面程序段中,说法正确的是( ) class location public : int GetX(); ; class rectangle:private location public: int GetW(); ;A.类rectangle的私有派生类是locationB.类rectangle中的public成员在类 location中是私有的C.类location中的public成员在类 re

9、ctangle中是不可访问的D.viod f( ) Rectangle r; int X=r .GetX( ); 其中int X = r .GetX( );是非法语句30.静态成员遵循类的其他成员所遵循的访问限制,除了( )。A.静态数据成员初始化B.静态成员函数C.私有静态数据成员D.公有静态成员函数31.下列对派生类的描述中,()是错误的。A.派生类至少有一个基类B.派生类的成员除了它自己的成员外,包含了它的基类的成员C.派生类中继承的基类成员的访问权限到派生类保持不变D.一个派生类可以作另一个派生类的基类32.在C+标准模板库中,vector容器是一种( )。A.标准类模板B.标准类C.

10、标准对象D.标准函数33.在一个C+源文件中使用了cin和cout,那么在这个源文件中必须包含()文件。A.stdlib.hB.stdio.hC.iostreamD.fstream34.下面叙述错误的是( )。A.赋值兼容规则也适用于多继承的组合B.派生类可以使用private派生C.对基类成员的访问必须是无二义性的D.基类成员的访问能力在派生类中维持不变35.已知类X中的一个成员函数说明如下: Void Set(X 二、判断题 (共 15 道试题,共 30 分)36.所谓私有成员是指只有类中所提供的成员函数才能直接使用它们,任何类以外的函数对它们的访问都是非法的。37.类中所提供的成员函数可

11、以直接访问该类的私有成员。38.多继承情况下,派生类的构造函数中基类构造函数的执行顺序取决于定义派生类时所指定的各基类的顺序。39.假定要对类AB定义加号操作符重载成员函数,实现两个AB类对象的加法,并返回相加结果,则该成员函数的声明语句为: AB operator+(AB 40.通过指针或引用可以调用不同对象相同名称的函数,但可导致完全不同的行为的现象称为二义性。41.类A有如下成员函数: int A:fun(double x)return (int) x/2; int A:fun(int x)return x*2; 设a为类A的对象,在主函数中执行语句int s=a.fun(6)+a.fu

12、n(2.0)后的s值为13。42.调试主要是为了解决程序运行时产生的错误。43.重载的运算符保持原来的优先级和结合性以及操作数的个数。44.在一个类中声明了某个静态数据成员,并在类外给出其定义和初始化后,若未定义该类的对象,该静态数据成员则不存在。45.对虚函数的调用,系统都是采用动态联编。46.cout属于标准输出流,而cerr和clog则不属于标准输出流。47.getline()函数从流中提取终止字符,但终止字符被丢弃。48.为了在对象生存期结束时释放其指针成员所指向的动态存储空间,通常需要为该类定义构造函数。49.含有纯虚函数的类是抽象类。50.运算符重载的形式有两种:成员函数形式和友元形式。

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

最新文档


当前位置:首页 > 高等教育 > 习题/试题

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