更多"以下有关析构函数的叙述不正确的是"的相关试题:
[单项选择]以下有关析构函数的叙述不正确的是
A. 一个类只能定义一个析构函数
B. 析构函数和构造函数一样可以有形参
C. 析构函数指定返回类型
D. 析构函数名前必须冠有符号“~”
[单项选择]下列关于派生类构造函数和析构函数的叙述中,错误的是
A. 派生类的构造函数会隐含调用基类的构造函数
B. 如果基类中没有默认构造函数,那么派生类必须定义构造函数
C. 在建立派生类对象时,先调用基类的构造函数,再调用派生类的构造函数
D. 在销毁派生类对象时,先调用基类的析构函数,再调用派生类的析构函数
[单项选择]以下有关析构函数的叙述中,正确的是()。
A. 类的析构函数可以重载
B. 类的析构函数可以有一个或多个参数
C. 析构函数可定义为虚函数
D. 定义类时,必须显式地定义析构函数
[单项选择]对类的构造函数和析构函数描述正确的是( )。
A. 构造函数可以重载,析构函数不能重载
B. 构造函数不能重载,析构函数可以重载
C. 构造函数可以重载,析构函数也可以重载
D. 构造函数不能重载,析构函数也不能重载
[单项选择]下面关于构造函数和析构函数的描述,错误的是( )。
A. 析构函数中调用虚函数采用静态联编
B. 对虚析构函数的调用可以采用动态联编
C. 当基类的析构函数是虚函数时,其派生类的析构函数也一定是虚函数
D. 构造函数可以声明为虚函数
[单项选择]下面关于构造函数和析构函数的描述中,错误的是( )。
A. 析构函数可以声明为虚函数
B. 对虚析构函数的调用可以采用动态联编
C. 一个类的虚函数仅对派生类中重定义的函数起作用,对其他函数没有影响
D. 构造函数可以声明为虚函数
[填空题]每一个类均有构造函数和析构函数,这两个函数中不可以定义为虚函数的是()。
[单项选择]下列关于派生类构造函数和析构函数的说法中,错误的是( )。
A. 派生类的构造函数会隐含调用基类的构造函数
B. 如果基类中没有缺省构造函数,那么派生类必须定义构造函数
C. 在建立派生类对象时,先调用基类的构造函数,再调用派生类的构造函数
D. 在撤销派生类对象时,先调用基类的析构函数,再调用派生类的析构函数
[填空题]下列程序在构造函数和析构函数中申请和释放类的私有成员,请完成该类的实现。
class Myclass
public:
Myclass(int num);
~ Myclass( );
public:
int *p;
;
Myclass: :Myclass( int hum)
【9】
Myclass:: ~ Myelass( )
【10】 ;
。
[填空题]下列程序在构造函数和析构函数中申请和释放类的数据成员int*a,申请时使用形参b初始化a,请填空。
classA
{
public:
A(intb);
~A( );
private:
int*a;
};
A::A(intb)
{
【 】;
}
A::~A( )
{
【 】;
}
[单项选择]以下对类的析构函数的叙述中,正确的是()。
A. 析构函数完成类的初始化
B. 析构函数完成对象的初始化
C. 析构函数完成撤销对象的相关处理
D. 析构函数和成员函数一样可以显式地调用