下列函数原型中,可以作为类Base析构函数的是()

题目

下列函数原型中,可以作为类Base析构函数的是()

  • A、void~Base
  • B、~Base()
  • C、~Base()const
  • D、Base()
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下列关于构造函数和析构函数的描述,错误的是( )。

A.析构函数中调用虚函数采用静态联编

B.对虚析构函数的调用可以采用动态联编

C.当基类的析构函数是虚函数时,其派生类的析构函数也一定是虚函数

D.构造函数可以声明为虚函数


正确答案:D
解析: 构造函数的主要作用是对数据成员初始化。构造函数不能声明为虚函数,这是因为在执行构造函数时类对象还未完成建立过程,当然谈不上函数与类对象的关联。

第2题:

下面属于析构函数特征的是()。

A.析构函数可以重载

B.对象销毁前会自动调用析构函数

C.如果定义一个类时没有定义析构函数,则系统会提供一个默认析构函数~<类名>()}

D.析构函数的函数类型为void


参考答案:BC

第3题:

( 32 ) 在一个派生类对象结束其生命周期时

A ) 先调用 派生类的析构函数后调用基类的析构函数

B ) 先调用 基类的析构函数后调用派生类的析构函数

C ) 如果基类没有定义 析构函数,则只调用派生类的析构函数

D ) 如果 派生类 没有定义 析构函数,则只调用 基类 的析构函数


正确答案:A

第4题:

是析构函数的特征。

A.一个类中只能定义一个析构函数

B.析构函数名与类名不同

C.析构函数的定义只能在类体内

D.析构函数可以有一个或多个参数


正确答案:A

第5题:

使用VC6打开考生文件夹下的工程test2_1,此工程包含一个源程序文件test2_1.cpp,但该程序运行有问题,请改正程序中的错误,使该程序的输出结果如下:

调用基类BASE的构造函数:1

调用基类BASE的构造函数:2

调用派生类A的构造函数:3

调用派生类A的析构函数

调用基类BASE的析构函数

调用基类BASE的析构函数

源程序文什test2_1.cpp清单如下:

include<iostream.h>

class BASE

{

public:

BASE(int i){cout<<"调用基类BASE的构造函数:"<<i<<endl;}

~BASE(){cout<<"调用基类BASE的析构函数"<<endl;)

/***************** found *****************/

}

class A:public BASE

{

public:

/***************** found *****************/

A(int a,int b):i(a),b(b)

{cout<<"调用派生类A的构造函数:"<<a+b<<endl;}

~A(){cout<<"调用派生类A的析构函数"<<endl;)

private:

BASE b;

};

void main()

{

/****************found***************/

BASE obj(1,2);

}


正确答案:(1)错误:类BASE的定义缺少“;” 正确:}; (2)错误:A(int aint b):i(a)b(b) 正确:A(intaintb):BASE(a)b(b) (3)错误:BASE obj(12); 正确:A obj(12);
(1)错误:类BASE的定义缺少“;” 正确:}; (2)错误:A(int a,int b):i(a),b(b) 正确:A(inta,intb):BASE(a),b(b) (3)错误:BASE obj(1,2); 正确:A obj(1,2); 解析:(1)主要考查考生对于类的定义的掌握,类定义结束后大括号外面不能缺少分号;
(2)主要考查考生对于派生类构造函数的掌握,该函数应该实现将参数传递给基类的功能,即派生类的构造函数应使用参数列表的形式将基类的数据成员初始化,初始化的时候直接使用基类的名称(BASE)而不是基类中变量的名称(i);
(3)主要考查考生对于基类和派生类函数调用关系的掌握,要调用派生类的构造函数必须使用派生类的对象,构造函数只有在该类的对象被使用的时候才会被调用。

第6题:

下面关于析构函数特征的描述正确的是()。

A、一个类中可以定义多个析构函数

B、析构函数名与类名相同

C、析构函数不能指定返回类型

D、析构函数可以有一个或多个参数


参考答案:C

第7题:

下列函数中,可以作为虚函数的是()。

A、析构函数

B、成员函数

C、普通函数

D、构造函数


参考答案:ABC

第8题:

对类的构造函数和析构函数描述正确的是

A.构造函数可以重载,析构函数不能重载

B.构造函数不能重载,析构函数可以重载

C.构造函数可以重载,析构函数也可以重载

D.构造函数不能重载,析构函数也不能重载


正确答案:A
解析:一个类中只能定义一个析构函数,否则会造成对同一对象的多次删除;而构造函数可以根据不同的参数个数和类型进行多次重载。

第9题:

在一个派生类对象结束其生命周期时,下列叙述中正确的是( )。

A. 先调用基类的析构函数,后调用派生类的析构函数

B.先调用派生类的析构函数,后调用基类的析构函数

C.如果基类没有定义析构函数,则只调用派生类的析构函数

D.如果派生类没有定义析构函数,则只调用基类的析构函数


参考答案:B

第10题:

下面关于构造函数和析构函数的描述中,错误的是( )

A.析构函数可以声明为虚函数

B.对虚析构函数的调用可以采用动态联编

C.一个类的虚函数仅对派生类中重定义的函数起作用,对其他函数没有影响

D.构造函数可以声明为虚函数


正确答案:D

更多相关问题