zoukankan      html  css  js  c++  java
  • 虚函数

    C++将父类的析构函数定义为虚函数,下列正确的是哪个?正确答案: A   
    A 释放父类指针时能正确释放子类对象  B释放子类指针时能正确释放父类对象 C这样做是错误的 D以上全错

    解析: C++中假设有基类为fa,它的派生类为son,如果有*fa = new son();在delete fa或者释放*fa的时候将只会调用基类的析构函数;如果基类的析构函数为虚函数,在delete fa或者释放*fa的时候会先调用派生类(这里也就是son)的析构函数,再调用基类的析构函数。如果不是virtual,那么撤销fa指针时,将不会调用子类的析构函数,造成了内存泄露。
  • 相关阅读:
    抽象代数学习笔记
    WC2021 游记
    简单的数学题
    前缀和公式
    杜教筛
    [模板]BZOJ4756线段树合并
    SPOJ 694
    bzoj1367 可并堆
    莫比乌斯反演(理论)
    es6 Set数据结构
  • 原文地址:https://www.cnblogs.com/serser/p/6514197.html
Copyright © 2011-2022 走看看