新北京交通大学《面向对象程序设计》在线作业一

奥鹏远程教育北京交通大学平时作业

北交《面向对象程序设计》在线作业一-0002

假定要对类AB定义加号操作符重载成员函数,实现两个AB类对象的加法,并返回相加结果,则该成员函数的声明语句为: ( )
A:AB operator+(AB a , AB b)
B:AB operator+(AB a)
C:operator+(AB a)
D:AB operator+( )
答案问询微信:424329

下列关于类和对象的叙述中,错误的是( )
A:一个类只能有一个对象
B:对象是类的具体实例
C:类是对某一类对象的抽象
D:类和对象的关系是一种数据类型与变量的关系
答案问询微信:424329

在下面的一维数组定义中,哪一个有语法错误。( )
A:int a[ ]={1,2,3}
B:int a[10]={0}
C:int a[ ]
D:int a[5]
答案问询微信:424329

有如下类声明: class MyBASE{ int k; public: void set(int n){ k=n;} int get( )const{ return k; } }; class MyDERIVED: protected MyBASE{ protected: int j; public: void set(int m, int n){MyBASE::set(m); j=n;} int get( )const{ return MyBASE::get( )+j; } }; 则类MyDERIVE
A:4
B:3
C:2
D:1
答案问询微信:424329

下列描述中,成员函数中包括( )的类肯定是抽象类
A:virtual double Area();
B:virtual double Area()=0;
C:virtual double Area(void){}
D:double Area(void)=0;
答案问询微信:424329

设x和y均为bool量,则x || y为假的条件是( )。
A:它们均为真
B:其中一个为真
C:它们均为假
D:其中一个为假
答案问询微信:424329

for(int x=0,y=0;!xylt;=5;y++)语句执行循环的次数是()
A:0
B:5
C:6
D:无数次
答案问询微信:424329

使用如setfill()的操作符对数据进行格式输出时,应包含( )头文件。
A:iostream
B:fstream
C:iomanip
D:stdlib
答案问询微信:424329

下列不合法的变量名为( )
A:int
B:int1
C:name_1
D:name0
答案问询微信:424329

下面的哪个保留字不能作为函数的返回类型? ( )
A:void
B:int
C:new
D:long
答案问询微信:424329

有如下函数模板定义: template T func(T x, T y) { return x*x+y*y; } 在下列对func的调用中,错误的是( )
A:func(3, 5);
B:func(3.0, 5.5);
C:func (3, 5.5);
D:func(3, 5.5);
答案问询微信:424329

对于包括()类型数据成员的用户定义类型必须定义其析构函数
A:static
B:指针类型
C:字符串
D:字符型
答案问询微信:424329

下面有关重载函数的说法中正确的是( )
A:重载函数必须奥鹏远程教育北京交通大学平时作业具有不同的返回值类型
B:重载函数形参个数必须不同
C:重载函数必须有不同的形参列表
D:重载函数名可以不同
答案问询微信:424329

下列有关类的说法不正确的是( )。
A:对象是类的一个实例
B:任何一个对象只能属于一个具体的类
C:一个类只能有一个对象
D:类与对象的关系和数据类型与变量的关系相似
答案问询微信:424329

以下不属于类访问权限的是( )
A:public
B:static
C:protected
D:private
答案问询微信:424329

下列关于运算符重载的叙述中,正确的是( )
A:通过运算符重载,可以定义新的运算符
B:有的运算符只能作为成员函数重载
C:若重载运算符+,则相应的运算符函数名是+
D:重载一个二元运算符时,必须声明两个形参
答案问询微信:424329

下列对模板的声明中,正确的是( )。
A:templatelt;A,Bgt;
B:templatelt;class A,Bgt;
C:templatelt;typename A,typename Bgt;
D:templatelt;class A;class Bgt;
答案问询微信:424329

有如下程序: #include using namespace std; class Test { public: Test( ) { n+=2; } ~Test( ) { n-=3; } static int getNum( ) { return n; } private: static int n; }; int Test::n = 1; int main( ) { Test* p = new Test; delete p; cout lt;lt; "n=" lt;lt; Test::getNum( ) lt;lt; end
A:n=0
B:n=1
C:n=2
D:n=3
答案问询微信:424329

下面( )不是构造函数的特征。
A:构造函数可以重载
B:构造函数可以设置缺省参数
C:构造函数的函数名和类名相同
D:构造函数必须指定返回值类型
答案问询微信:424329

下列关于模板的叙述中,错误的是( )
A:模板声明中的第一个符号总是关键字template
B:在模板声明中用 和 括起来的部分是模板的形参表
C:类模板不能有数据成员
D:在一定条件下函数模板的实参可以省略
答案问询微信:424329

下列关于this指针的叙述中,正确的是( )
A:任何与类相关的函数都有this指针
B:类的成员函数都有this指针
C:类的友元函数都有this指针
D:类的非静态成员函数才有this指针
答案问询微信:424329

下面关于析构函数特征的描述正确的是( )。
A:一个类中可以定义多个析构函数
B:析构函数名与类名相同
C:析构函数不能指定返回类型
D:析构函数可以有一个或多个参数
答案问询微信:424329

在进行任何的C++流操作后,都可以用C++流的有关成员函数检测流的状态,用来检测是否到达文件的末尾函数是( )。
A:fail()
B:eof()
C:bad()
D:good()
答案问询微信:424329

下面关于析构函数描述正确的是( )
A:系统可以提供默认的析构函数
B:析构函数必须由用户定义
C:析构函数没有参数
D:析构函数可以设置默认参数
答案问询微信:424329

继承是( )的方法。
A:将特殊的类变成通用的类
B:把通用的参数传送给特殊的类的对象
C:将通用的类变成特殊的类
D:将已有的类添加新的特性,但不重写它们
答案问询微信:424329

一般对象和指向对象指针的成员函数表示分别是运算符.和-。( )
A:错误
B:正确
答案问询微信:424329

析构函数是不能重载的 。( )
A:错误
B:正确
答案问询微信:424329

在C++语言中,类是支持数据封装的工具。( )
A:错误
B:正确
答案问询微信:424329

友元类中所有成员函数都是友元函数 。( )
A:错误
B:正确
答案问询微信:424329

虚函数不能是类的静态成员。( )
A:错误
B:正确
答案问询微信:424329

成员函数中调用的虚函数可能实现动态联编。( )
A:错误
B:正确
答案问询微信:424329

使用const说明常量时,可以不必指出类型.( )
A:错误
B:正确
答案问询微信:424329

静态数据成员函数是属于某个对象的。( )
A:错误
B:正确
答案问询微信:424329

静态数据成员的值是不能改变的 。( )
A:错误
B:正确
答案问询微信:424329

多重继承中,派生类构造函数对其基类构造函数的执行顺序取决于它成员函数初始化表中说明的基类顺序。( )
A:错误
B:正确
答案问询微信:424329

友元函数说明在类体内它是一种成员函数 。( )
A:错误
B:正确
答案问询微信:424329

在类体内允许对数据成员进行初始化 。( )
A:错误
B:正确
答案问询微信:424329

抽象类只能用作其他类的基类。( )
A:错误
B:正确
答案问询微信:424329

在派生过程中,派生类吸收包括构造函数和析构函数在内的所有基类成员。( )
A:错误
B:正确
答案问询微信:424329

作为模板类型参数的关键字class,特别含义是“任何用户定义类的类型”。( )
A:错误
B:正确
答案问询微信:424329

提供优质的教育资源

公众号: 超前自学网