【发布时间】:2009-03-13 09:16:45
【问题描述】:
如何判断一个对象是否已从内存中释放?
我知道当我们使用 alloc|copy|retain 来创建对象时,必须手动释放该对象。如果使用实例类方法(NSString stringwithformat:),对象会被NSAutoRealeasePool自动释放,但是,有时在(void)dealloc函数那里有一些对象用于释放。
谁能告诉我
[object release][object release](void)dealloc和NSAutoReleasePool释放对象有什么区别?(void)dealloc函数什么时候被调用,NSAutoReleasePool什么时候释放内存,我知道是每个循环周期,如何从代码中检查?
1234563对象在标头,那么你不再可以分配对象,因为两者都会保留对象,谁能告诉我为什么我仍然可以这样编码而不会导致任何内存泄漏?
【问题讨论】:
-
重新标记:“内存”和“管理”到“内存管理”
-
这确实是一个用这种格式无法很好回答的问题。您需要获得一本关于 Objective-C 编程的好书并学习它。 (或者干脆放弃内存管理并坚持使用 ARC。)
标签: iphone objective-c memory memory-management