关于析构函数的叙述中,错误的是
A.析构函数的执行顺序是先执行派生类的、再执行对象成员的、最后执行基类的
B.基类的析构函数可以被派生类继承
C.当系统撤销对象时,自动调用析构函数
D.如果没有定义析构函数,编译系统自动生成一个缺省的析构函数
- · 有3位网友选择 D,占比30%
- · 有3位网友选择 A,占比30%
- · 有2位网友选择 B,占比20%
- · 有2位网友选择 C,占比20%
A.析构函数的执行顺序是先执行派生类的、再执行对象成员的、最后执行基类的
B.基类的析构函数可以被派生类继承
C.当系统撤销对象时,自动调用析构函数
D.如果没有定义析构函数,编译系统自动生成一个缺省的析构函数
A使用delete运算符释放类对象时要调用该类的析构函数
Bdelete运算符可以作用于空指针
C由new运算符分配的动态内存空间必须通过delete运算符释放
D使用delete运算符释放动态分配的单个对象和对象数组的语法格式相同
B.析构函数完成对象被删除前的一些清理工作
C.如果程序中未声明构造函数,则系统自动产生出一个缺省形式的构造函数
D.析构函数允许重载,但析构函数不得返回任何值,即使关键字void也不允许
B.对象销毁前会自动调用析构函数
C.如果定义一个类时没有定义析构函数,则系统会提供一个默认析构函数~<类名>()}
D.析构函数的函数类型为void
B.根据函数是否需要参数,可将函数分为无参函数和有参函数两种。
C.调用有参函数时,调用函数将赋予这些参数实际的值。
D.将函数定义中的参数表称为实在参数表。
A、在面向对象方法中,类之间共享属性和操作的机制称为继承
B、一个派生类只有一个基类,这样的继承关系称为单一继承
C、一个派生类的基类不止一个,这种继承称为多重继承
D、多重继承,在派生类中不会产生对基类成员访问的二义性
A、可缺省
B、B(int i = 0, int j = 0) :A(i), a1(j){ }
C、B(int i = 0, int j = 0) :A(i), A(j){ }
D、B(int i = 0, int j = 0) :A(i){ }
为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!