下列关于虚函数的描述,错误的是( )。 A. 构造函数可以是虚函数 B. 析构函数可以是虚函数 C. 虚函数必须通过引用或基类的指针实现 D. 虚函数的函数名必须与
首先引出,我们的新知识点——虚函数(virtual function)。这是一种什么函数呢?简单来讲,就是一个函数前面用virtual声明的函数,一般形式如下:1 2 3 4 virtual 函数返回值 函数名(形参) { 函数体 }那它有什么用呢?虚函数的出现,允许函数在调用时与函数体的联系在运行的时候才建立,即所谓的动态联编。那么在虚...
可以明确,通过父类指针来调用函数的时候,无法调用Son类的析构函数,在Son类在堆区上申请的内存就无法释放,造成内存泄漏。Son类的析构函数不能调用的主要原因就是在虚函数表中找不到Son的析构函数地址,解决办法就是把Base类的写成虚析构函数或者纯虚析构函数,下面给出Base类为纯虚析构函数的代码和运行结果: #in...
下面关于构造函数和析构函数的描述中,错误的是( )。 A.析构函数可以声明为虚函数B.对虚析构函数的调用可以采用动态联编C.一个类的虚函数
下列描述中正确的是( )。 A.构造函数可以为虚函数,析构函数不可以为虚函数B.构造函数不可以为虚函数,析构函数可以为虚函数C.构造函数可
百度试题 题目下列()可以是虚函数。 A. 构造函数 B. 拷贝构造函数 C. 静态成员函数 D. 析构函数 相关知识点: 试题来源: 解析 D.析构函数 [认真阅读上述试题,并作出选择]
百度试题 题目下列关于虚函数的描述,正确的是()。 A. 静态成员函数可以是虚函数 B. 构造函数不可以是虚函数 C. 析构函数不可以是虚函数 D. 内联函数可以是虚函数 相关知识点: 试题来源: 解析 B.构造函数不可以是虚函数
(3) 一般情况下,写虚析构函数即可,类的内部有很多带有实现的虚函数,此时又希望该类为抽象类,此时我们可以将析构函数设置为纯虚析构函数,使得该类变成抽象类。 classAnimal {public: Animal() { cout<<"Animal 构造函数"<<endl; p_name=newchar[100]; ...
当基类的析构函数是虚函数时,其派生类的析构函数也一定是虚函数 D. 构造函数可以声明为虚函数 相关知识点: 试题来源: 解析 D 正确答案:D 解析:构造函数的主要作用是对数据成员初始化。构造函数不能声明为虚函数,这是因为在执行构造函数时类对象还未完成建立过程,当然谈不上函数与类对象的关联。