dealloc 必须重写吗?

iOS 码拜 8年前 (2015-05-08) 822次浏览 0个评论
 

我看有的代码中有,而有的代码中没有。

什么情况重写?

你有自己要释放的东西的时候
我的理解 是不是:

当我的复合技术时候,一个类,包含了其他对象 ,

那么就必须 dealloc??

引用 1 楼 arthurchenjs 的回复:

你有自己要释放的东西的时候

dealloc 函数一般不建议重写
在每一个dealloc方法中你只需要将需要释放的对象在这里release掉就可以了
20分
自己申请了内存就要释放,重写dealloc,用release添加你需要释放的就可以了
自然要重写。
引用 4 楼 dansley 的回复:

自己申请了内存就要释放,重写dealloc,用release添加你需要释放的就可以了

多谢  复合时候, 自然申请内存。 所以重写。

楼主明白了?  能详细说说吗?  还有,你说的复合是什么意思?, 类的复合?
引用 7 楼 zsx923 的回复:

楼主明白了?  能详细说说吗?  还有,你说的复合是什么意思?, 类的复合?

对  ,是类的复合,

引用 8 楼 qiuruonan 的回复:

引用 7 楼 zsx923 的回复:

楼主明白了?  能详细说说吗?  还有,你说的复合是什么意思?, 类的复合?
对  ,是类的复合,

比如类A中包含了B类, A类初始化函数中,会对B?的对象,分配内存,并且初始化,

当然最后要负责 dealloc,  如果不这样的话, 内存泄露,或者, 分配内存B时候, 将其设置为 autorelease 。。就避免了手动来释放B了。   

不知道我说的对不对,欢迎发言。


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明dealloc 必须重写吗?
喜欢 (0)
[1034331897@qq.com]
分享 (0)

文章评论已关闭!