所以我明白,我应该释放我拥有的对象。 (alloc/copy/retain
东西)
而且我也明白(有点?),如果我在我的某些类中使用 @property
和 retain
,或者使用 alloc/init 的一些实例变量,然后我应该编写一个自定义 dealloc 以确保这些 dealloc 与该类一起被释放。
我不明白的是我应该手动释放 cell
对象吗? (因为我是在 cellForRowAtIndexPath
中使用 alloc/init 创建它的?是的,我知道,tableView 在被释放时应该杀死那些单元格,但我想确定吗?
另外,能否手动释放UILabel
、UITextField
等?我确实知道当您取消分配 View 时,它们会被杀死,但我还是要再次确认一下吗?
更新: 是的,感谢有关引用计数的提示,但该项目的确切目的是使用手动内存管理来做一些简单的事情。 有趣的是,现在的大多数导师都完全跳过了这一部分,所以像我这样的新手必须自己解决所有这些问题。
最佳答案
Objective-C 支持 Automatic Reference Counting它为你做了几乎所有的内存管理。我建议您将旧代码迁移到 ARC;这很容易(Xcode 对此有重构支持),它会为您省去很多麻烦。
关于ios - 我需要澄清一下我是否应该(可以?)解除分配与 View 相关的 UI 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31488908/