目前,我正在涉足名为“iPhone OS中的内存管理”的冰冷水域。
这是我学到的一个规则:
每当我在我的方法中看到一个alloc时,我会在该方法底部释放相应的变量。
每当我在我的头文件中创建一个@ property(...),并且其中含有copy或retain关键字时,我会在dealloc方法中向该变量发送一条release消息。
每当我有一个IBOutlet时,我也会做同样的事情。唯一的例外是:如果IBOutlet具有类似@property(... assign)的内容,换句话说:如果它完全具有assign关键字。那么我不会在dealloc方法中释放它。
我觉得还有很多好的规则需要知道!只要写下你所拥有的东西。让我们把它们都集合起来。欢迎提供对其进行描述的优秀链接。