C++工作笔记-作用域的巧妙使用,释放堆区创建的资源
发布日期:2021-06-30 10:56:33
浏览次数:2
分类:技术文章
本文共 759 字,大约阅读时间需要 2 分钟。
比如:
要做一个接口,API,函数给别人用,
放回一堆数据给了那个指针,那么,这个new出的东西,是谁来释放!!!!!
解决方法:可以在定义一个类,接口,函数,用于释放,并使用了作用域,和类的特点,
如下代码:
#include#include using namespace std;struct Data{ int value_1; int value_2; int value_3; Data(int value1,int value2,int value3){ value_1=value1; value_2=value2; value_3=value3; }};class TestDemo{public: TestDemo(vector &data){ m_data=data; } ~TestDemo(){ cout<<"TestDemo descontruction called!"< m_data;};void createData(vector &data){ for(int i=0;i<100;i++){ data.push_back(new Data(i,i+1,i+2)); }}void main(){ vector m_data; createData(m_data); { TestDemo testDemo(m_data); } getchar();}
运行截图如下:
可以看到由createData这函数new出的东西,被TestDemo这个类给释放了!
这里只说明一个思路!!!!
转载地址:https://it1995.blog.csdn.net/article/details/82705292 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
初次前来,多多关照!
[***.217.46.12]2024年04月13日 17时29分35秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
linux命令tee
2019-04-30
linux安装docker
2019-04-30
Docker Compose安装
2019-04-30
批处理命令传递参数
2019-04-30
apache访问php文件报403权限问题
2019-04-30
Java连接access数据库demo
2019-04-30
ORA-01000: 超出打开游标的最大数 问题的分析和解决
2019-04-30
SVN环境中add命令详解
2019-04-30
SVN的提交和更新和删除
2019-04-30
SVN命令diff、mkdir、cat
2019-04-30
SVN工作副本还原命令revert
2019-04-30
SVN锁定lock和解锁unlock
2019-04-30
SVN强制解锁操作
2019-04-30
SVN命令list
2019-04-30
SVN命令log和info
2019-04-30
SVN命令copy
2019-04-30
yum安装mysql
2019-04-30
mysql删除表数据恢复
2019-04-30