码迷,mamicode.com
首页 > 其他好文 > 详细

第22课.对象的销毁

时间:2019-11-09 18:02:34      阅读:113      评论:0      收藏:0      [点我收藏+]

标签:mic   值类型   自动   技术   mamicode   没有   classname   函数   public   

1.析构函数

a.c++的类中可以定义一个特殊的清理函数:析构函数。析构函数的功能与构造函数相反。
b.定义:

~ClassName()

1).析构函数没有参数没有返回值类型声明
2).析构函数在对象销毁时自动被调用
(因为没有参数,所以析构函数不存在函数重载的问题)

#include <stdio.h>

class Test
{
    int mi;
    
public:
    Test(int i)
    {
        mi = i;
        printf("Test(): %d\n", mi);
    }
    
    ~Test()
    {
        printf("~Test(): %d\n", mi);
    }
};

int main()
{
    Test t(1);
    
    Test *pt = new Test(2);
    
    delete pt;            //这里new分配的空间需要delete来释放时才会使对象调用它的析构函数,要是使用delete来释放结果如下第二张
    
    return 0;
}

技术图片
技术图片

第22课.对象的销毁

标签:mic   值类型   自动   技术   mamicode   没有   classname   函数   public   

原文地址:https://www.cnblogs.com/huangdengtao/p/11826662.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!