首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

如何释放对象

2012-03-17 
怎么释放对象写了一个类,比如class A,之后在代码中A a()创建了一个对象,之后要怎样释放掉这个对象呢,自己

怎么释放对象
写了一个类,比如class A,之后在代码中A a()创建了一个对象,之后要怎样释放掉这个对象呢,自己调用析构函数没有用,是不是只有自己用new来创建一个对象才可以在中途释放,如果要用new,要怎么写

[解决办法]
楼主的定义方式不用自己去释放,a所处的函数体运行完时,
自会调用a的析构函数。想要用new的话这样:
A *a = new A();
用完之后别忘了用delete释放内存,防止内存泄露。
[解决办法]
new出来的要主动delete,一般来说对象的创建是A *a = new A;而不是new A();这是非常常见的错误。需要与java相区分。
没有new出来的对象由系统自动释放。
[解决办法]
一般数据,系统会在它作用域后自动释放,,只有通过new的需要程序员释放(其实,如果你没有释放,在整个程序结束后,也是会释放的。。但这不是好程序员该做的事 )

释放有
delete obj和 delete[] obj,后面是用来释放数组型的。。

LZ可以看看这篇我转载的文章,,,希望有所帮助( 我是在思考局部变量问题是,疑惑有的变量居然不会消失,而从网上查找资料的,,对LZ应该有所帮助 )

http://blog.csdn.net/gytanonymous/article/details/7060574

http://blog.csdn.net/gytanonymous/article/details/7060584

热点排行