奥鹏西安交通大学《面向对象程序设计》在线作业

奥鹏西安交通大学平时在线作业

西交《面向对象程序设计》在线作业

若有语句 int *p = new int[5]; int * pi; 则以下语句中,执行时会造成delete[ ] p 语句的执行出错的是( )。
A:(*p)++;
B:p++;
C:pi=p;
D:pi=p+3;
答案问询微信:424329

面向对象软件开发中使用的OOA表示( )。
A:面向对象分析
B:面向对象设计
C:面向对象语言
D:面向对象方法
答案问询微信:424329

不可以成为类的数据成员的是()。
A:自身类的对象
B:另一个类的对象
C:自身类的指针或引用
D:其他基本数据类型
答案问询微信:424329

有如下的定义语句:int * array_ptr=new int[10]; int * pi;执行下面的哪个语句将使程序执行delete[ ] array_ptr 时出错( )
A:(*array_ptr)++;
B:array_ptr++;
C:pi=array_ptr;
D:pi=array_ptr+3;奥鹏西安交通大学平时在线作业
答案问询微信:424329

下述静态数据成员的特性中,( )是错误的。
A:声明静态数据成员时前面要加修饰符static。
B:静态数据成员要在类体外进行初始化。
C:在程序中引用静态数据成员时,要在静态数据成员名前加和作用域运算符。
D:静态数据成员是一个类的个别对象所共享的。
答案问询微信:424329

假定一个类的构造函数为 “A(int aa, int bb) {a=aa; b=aa*bb;}”,则执行 “A x(4,5);”语句后,x.a和x.b的值分别为( )
A:4和5
B:5和4
C:4和20
D:20和5
答案问询微信:424329

若需要使类中的一个指针成员指向一块动态存储空间,则通常在( )函数中完成。
A:析构
B:构造
C:任一成员
D:友元
答案问询微信:424329

若有如下函数模板定义,则正确使用该函数模板的语句是______。templateclass typevoid add(type a, type b, type c){ c=a+b ; }
A:float x,y,z; add(x,y,z);
B:int x,y,z; add(x,y,z);
C:float x,y; int z; add(x,y,z);
D:float x,y; int z; add(x,y,z);
答案问询微信:424329

在成员函数中进行双目运算符重载时,其参数表中应带有( )个参数。
A:0
B:1
C:2
D:3
答案问询微信:424329

类的析构函数是一个对象被( )时自动调用的。
A:建立
B:撤消
C:赋值
D:引用
答案问询微信:424329

设x和y均为bool量,则x
答案问询微信:424329

下列关于私有继承的说法中正确的是()。
A:基类成员对派生类新定义的成员函数是不可见的;
B:基类成员对派生类新定义的成员函数是可见的;
C:只有基类成员中的公有成员对派生类新定义的成员函数是可见的;
D:基类成员中的保护成员对派生类新定义的成员函数是可见的。
答案问询微信:424329

设px是指向一个类对象的指针变量,则执行 “delete px;”语句时,将自动调用该类的( )
A:无参构造函数
B:带参构造函数
C:析构函数
D:复制构造函数
答案问询微信:424329

类的析构函数可以带有( )个参数。
A:0
B:1
C:2
D:任意
答案问询微信:424329

类模板的作用是可以将其实例化后得到一个具体的()。
A:类
B:对象
C:模板类
D:模板函数
答案问询微信:424329

类中定义的成员默认为(??)访问属性。
A:public
B:private
C:protected
D:friend
答案问询微信:424329

关于getline()函数的下列描述中,错误的是( )。
A:该函数中所使用的终止符只能是换行符
B:该函数读取字符串时,遇到终止符时便停止
C:该函数读取的字符串长度是受限制的
D:该函数可以用来从键盘上读取字符串
答案问询微信:424329

函数重载是指( )。
A:两个或两个以上的函数取相同的函数名,但形参的个数或类型不同
B:两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同
C:两个以上的函数名字不同,但形参的个数或类型相同
D:两个以上的函数取相同的函数名,并且函数的返回类型相同
答案问询微信:424329

假定AB为一个类,则执行AB x;语句时将自动调用该类的( )
A:有参构造函数
B:无参构造函数
C:拷贝构造函数
D:赋值构造函数
答案问询微信:424329

当一个类对象离开它的作用域时,系统自动调用该类的( )。
A:无参构造函数
B:带参构造函数
C:拷贝构造函数
D:析构函数
答案问询微信:424329

下面是五条顺序出现的声明语句,非法的初始化语句是( )。
A:int i=–1;
B:const int ic=i;
C:const int *pc=
D:int *const cpi=
E:const int *const cpic=
答案问询微信:424329

以下叙述中正确的是( )
A:使用#define可以为常量定义一个名字,该名字在程序中可以再赋另外的值
B:使用const定义的常量名有类型之分,其值在程序运行时是不可改变的
C:在程序中使用内置函数使程序的可读性变差
D:在定义函数时可以在形参表的任何位置给出缺省形参值
答案问询微信:424329

在重载一个运算符时,其参数表中没有任何参数,这表明该运算符是( )。
A:作为友元函数重载的1元运算符
B:作为成员函数重载的1元运算符
C:作为友元函数重载的2元运算符
D:作为成员函数重载的2元运算符
答案问询微信:424329

友元的作用之一是()。
A:提高程序的运行效率。
B:加强类的封装性。
C:实现数据的隐蔽性。
D:增加成员函数的种类。
答案问询微信:424329

若一个类中含有纯虚函数,则该类称为( )。
A:基类
B:虚基类
C:抽象类
D:派生类
答案问询微信:424329

下列关于成员函数特征的描述中,( )是错误的。
A:成员函数一定是内置函数
B:成员函数可以重载
C:成员函数可以设置参数的默认值
D:成员函数可以是静态的
答案问询微信:424329

下列关于运算符重载的描述中,( )是正确的。
A:运算符重载可以改变运算数的个数;
B:运算符重载可以改变优先级;
C:运算符重载可以改变结合性;
D:运算符重载不可以改变语法结构。
答案问询微信:424329

关键字class和typename用于定义模板类型参数,其含义为( )。
A:任何用户定义的类类型
B:C++内部的类型
C:A与B
D:都不是
答案问询微信:424329

C++只能用于面向对象程序设计,不适用于面向过程程序设计。( )
A:错误
B:正确
答案问询微信:424329

引用和指针都可作函数参数。( )
A:错误
B:正确
答案问询微信:424329

程序运行过程出现异常是由于语法错误引起的。( )
A:错误
B:正确
答案问询微信:424329

派生类能够继承基类的析构函数。( )
A:错误
B:正确
答案问询微信:424329

C++允许用户可以定义新的运算符。例如,可将“**”定义为幂运算符。( )
A:错误
B:正确
答案问询微信:424329

打开一个二进制文件时可以同时指定它既是输入文件又是输出文件。( )
A:错误
B:正确
答案问询微信:424329

若类B是类A的私有派生类,类C是类B的私有派生类,则类C可访问类A的公用成员。( )
A:错误
B:正确
答案问询微信:424329

运算符重载以后,其优先级和结合性都不能改变。( )
A:错误
B:正确
答案问询微信:424329

若类Y是类X的私有派生类,类Z是类Y的公用派生类,则类Z不能访问类X 的公用成员和保护成员。( )
A:错误
B:正确
答案问询微信:424329

字符串"sdfgh"的长度是5。( )
A:错误
B:正确
答案问询微信:424329

构造函数可以重载。( )
A:错误
B:正确
答案问询微信:424329

纯虚函数是在基类中说明的虚函数,它在该基类中必须定义具体的操作内容。( )
A:错误
B:正确
答案问询微信:424329

使用new运算符创建数组时,可以为该数组指定初始值( )。
A:错误
B:正确
答案问询微信:424329

重载单目运算符作为类的成员函数,函数没有参数。( )
A:错误
B:正确
答案问询微信:424329

对使用默认参数的构造函数,如果在类外定义构造函数,应该在定义构造函数时指定默认值( )。
A:错误
B:正确
答案问询微信:424329

使用虚函数可以避免多重继承产生的二义性。( )
A:错误
B:正确
答案问询微信:424329

C++中设置虚基类的目的是实现运算时的多态性。()
A:错误
B:正确
答案问询微信:424329

私有继承的派生类不能访问基类中的私有成员,但公用继承的派生类可以访问基类中的私有成员。( )
A:错误
B:正确
答案问询微信:424329

使用虚函数无法避免多重继承产生的二义性。( )
A:错误
B:正确
答案问询微信:424329

引用可以不初始化。( )
A:错误
B:正确
答案问询微信:424329

提供优质的教育资源

公众号: 超前自学网