0

在 C++ 中,对象可以删除自己,在 Objective-C 中调用 Dealloc 是不允许的,在 ARC 中,该类甚至可能没有 dealloc。

在 Objective-C 中是否会像有时在 C++ 中那样删除自己的对象?

4

3 回答 3

0

释放内存并删除它?

[xyz release];
xyz=nil;
于 2012-07-25T15:00:48.787 回答
0

“删除这个”没有直接的等价物,因为 Objective-C 使用引用计数,当对象的引用数达到零时,系统将删除您的对象。如果你想实现某种“一次性”对象,即做某事然后删除自己,那么你最好的选择是在开始操作时增加对 self 的引用计数,[self retain]并在结束时减少它[self release]。如果没有其他人持有对您的对象的引用,则稍后将导致该对象自行删除。

于 2012-07-25T15:01:42.597 回答
0

将你的对象设置为 nil

obj = nil
于 2012-07-25T15:03:14.463 回答