// ConsoleApplication2.cpp : 定义控制台应用程序的入口点。
//#include "stdafx.h"
#include <iostream>using namespace std;
class haitao{
private:int ageee;
public :int getAgee(){return ageee;}haitao(){cout << "无参构造函数被调用" << endl;}~haitao(){cout << "析构函数被调用" << endl;}};
void test(){haitao tt; //对象建立//方法结束时,由系统自动调用析构函数释放对象
}int _tmain(int argc, _TCHAR* argv[])
{test();system("pause");return 0;
}

上面代码块执行结果:



接着,我们再看一个调用析构函数的例子:


#include "stdafx.h"
#include <iostream>using namespace std;
class haitao{
private:int ageee;
public :int getAgee(){return ageee;}haitao(){cout << "无参构造函数被调用" << endl;}~haitao(){cout << "析构函数被调用" << endl;}};void test(){haitao * pt; //动态的创建一个对象指针pt = new haitao();delete pt; // 必须使用delete释放指针所指向的内存空间,否则会内存泄漏
}
int _tmain(int argc, _TCHAR* argv[])
{test();system("pause");return 0;
}

上面代码块,打印结果如下:



值得注意的如下:

由此可以看见 ,由于没有使用delete关键字释放指针所指的内存单元,造成内存泄漏


QQ技术交流群:386476712

c++析构函数的调用相关推荐

  1. C++中最好不要在构造函数和析构函数中调用虚函数!!!

    1.最好不要在基类和派生类的构造和析构函数中调用虚函数,不会出现多态性 实例如下: #include "iostream"using namespace std;class Bas ...

  2. 构造函数和析构函数的调用过程

    下面代码的输出是什么?(D) class A { public: A() { } ~A() { cout<<"~A"<<endl; } }; class B ...

  3. c++构造函数和析构函数的调用顺序研究

    构造函数与析构函数的调用顺序 构造函数与析构函数的调用顺序 构造函数与析构函数的调用顺序 1)当类中有成员变量是其它类的对象时,首先调用成员变量的构造函数,调用顺序与声明顺序相同:之后调用自身类的构造 ...

  4. 构造函数及析构函数的调用

    构造函数以及析构函数的调用 #include <iostream> using namespace std; class Person { public:Person(){cout < ...

  5. C++学习笔记-----不要在构造函数和析构函数中调用虚函数

    考虑下面的程序: #include <iostream> using namespace std;class Base { public:Base() { cout << &q ...

  6. C++中最好不要在构造函数和析构函数中调用虚函数

    1.最好不要在基类和派生类的构造和析构函数中调用虚函数,不会出现多态性 实例如下: #include "iostream"using namespace std;class Bas ...

  7. 在构造函数/析构函数中调用virtual函数带来的影响

    在构造函数/析构函数中调用virtual函数,那么调用的一定是本类中的virtual函数. 先看一段代码: #include<iostream>class Base { public:Ba ...

  8. 实验3.1 定义一个CPU类,观察构造函数和析构函数的调用顺序

    题目 定义一个CPU类,包含等级(rank).频率(frequency).电压(voltage)等属性,有两个公有成员函数run.stop.其中,rank为枚举类型CPU_Rank,定义为enum C ...

  9. [Reprint]c++ 析构函数的调用

    析构函数在调用默认的析构函数和用户自己覆写的析构函数的时候有点意识模糊呢.写段代码总结下 [cpp] view plaincopy #include <iostream> using na ...

最新文章

  1. [洛谷P4171][JSOI2010]满汉全席
  2. C#教程3:基本语言结构
  3. Windows Batch [精华]
  4. uni-app小程序 点击页面滚动到指定位置
  5. html页面foot,HTML tfoot用法及代码示例
  6. 我的代码第一次运行时的样子
  7. C#LeetCode刷题之#9-回文数(Palindrome Number)
  8. java获取页面点击次数_java计算鼠标点击次数的题,急求!
  9. java xml 画表格_用js+xml自动生成表格的东西
  10. DB2数据库备份和恢复笔记
  11. 操作系统:高响应比优先调度算法(HRRN)Java代码实现
  12. matlab 求已知概率密度函数的随机数生成
  13. 鸭绒和鹅绒的区别RDS人道羽绒标准
  14. 使用Altium Designer报错的处理记录 1 :Class Document Source Message Time Date No.
  15. python串口编程整理(更新完)
  16. java在各大领域应用现状及未来
  17. 连接到手机热点显示无法解析服务器,Win10系统电脑可以成功连接上手机的热点但连不上网该如何处理...
  18. Bayer图像色彩还原线性插值方法
  19. dac0832三角波c语言程序,单片机驱动dac0832输出方波三角波正玄波程序
  20. 北航OJ题目:ID4(Kevin·Feng的正确@姿势)

热门文章

  1. Oracle索引的理解
  2. 阿里云、腾讯云、华为云、Ucloud(优刻得)、天翼云 的云服务器性能测试和价格对比
  3. Python 绘制遥感数字高程影像(DEM)
  4. 详解JSP 中Spring工作原理及其作用
  5. oracle 监听 宕机,由重启引起的Oracle RAC节点宕机分析及追根溯源
  6. Invalid bound statement (not found): com.itheima.mapper.userMapper.SelectAll
  7. 深入计算机组成原理(二十)面向流水线的指令设计(上):一心多用的现代CPU
  8. [20160213]关于ansi语法.txt
  9. OCJP 考试题之七
  10. AVD Nexus_5X_API_P is already running. If that is not the case, delete the files at ...