ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

第22课.对象的销毁

2019-11-09 16:57:58  阅读:241  来源: 互联网

标签:销毁 函数 22 对象 mi int 析构 Test delete


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,对象,mi,int,析构,Test,delete
来源: https://www.cnblogs.com/huangdengtao/p/11826662.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有