类需要一个虚析构函数吗?
来源:互联网 发布:网络教学的产生 编辑:程序博客网 时间:2024/05/21 10:01
绝不会用作基类的类是不需要虚析构函数的:任何虚函数只在继承的情况下才有用。
假设,你设计了一个A类,并且B是A的继承,你在使用的时候,你可能会将实际指向B类的指针指向基类A的指针,并且调用了delete函数。
代码如下:
#include<iostream>using namespace std;struct A{ string a; virtual ~A() //~A() { cout<<"~A()"<<endl; }};struct B:A{ string b; ~B() { cout<<"~B()"<<endl; }};int main(){ A *a = new B; delete a; return 0;}
在这样的时候,我们是需要一个虚析构函数。
- 类需要一个虚析构函数吗?
- C++ 虚析构函数-(一个带有虚函数功能的类,则它需要一个虚析构函数)
- 基类为何需要有一个虚析构函数
- [CodeComplete]创建一个函数需要理由吗
- 什么时候需要虚析构函数
- 什么时候需要虚析构函数
- 什么时候需要虚析构函数
- 为何需要虚析构函数
- 为需要动态分配内存的类声明一个拷贝构造函数和一个赋值操作符
- 为需要动态分配内存的类声明一个拷贝构造函数和一个赋值操作符
- 为需要动态分配内存的类声明一个拷贝构造函数和一个赋值操作符
- 为需要动态分配内存的类声明一个拷贝构造函数和一个赋值操作符
- 为需要动态分配内存的类声明一个拷贝构造函数和赋值操作符
- 为需要动态分配内存的类声明一个拷贝构造函数与一个赋值运算运算符
- 关于为什么要为需要动态分配内存的类声明一个拷贝构造函数和一个赋值操作符
- 为需要动态分配内存的类声明一个拷贝构造函数与一个赋值运算运算符
- 条款11: 为需要动态分配内存的类声明一个拷贝构造函数和一个赋值操作符
- Effective C++(十一):为需要动态分配内存的类声明一个复制构造函数和一个赋值操作符
- 英特尔
- 随想录(程序员的缺点)
- Struts--超链传参
- java时区问题
- NORDIC音频芯片NRF2460
- 类需要一个虚析构函数吗?
- 我们只关心错误
- 音频芯片NRF24Z1芯片介绍
- GoogleMap切片下载的实现
- Windows Phone 7 – SystemTray与ProgressIndicator(wp的progressDialog)
- git 基本命令
- 孙悟空和唐僧做“非诚勿扰”男嘉宾。
- 底部固定附加层的显示
- 用户体验是个什么东西?用户体验如何评价好坏?怎样用一句话描述用户体验评价方法的核心?