做
这样的事情有什么不对吗?
NSString * string = [ [ NSString alloc ] init ];
...
[ string release ];
或者在添加
时是否有任何价值(除了最佳做法)
string = nil;
答案 0 :(得分:28)
没有必要,但是好的做法。如果你在发布后无意中引用它,可能会发生不好的事情,但在Objective C中引用nil没有任何损害。
答案 1 :(得分:3)
将实例变量设置为nil在多线程应用程序中比单线程应用程序更有用,因为使用多个线程时,您无法始终保证实例变量只能在之前读取 >它已经发布了。
我通常不会在单线程应用程序中烦恼,除非有其他令人信服的理由。
答案 2 :(得分:0)
Objective-C与使用花哨的预处理器的C实际上是相同的。
在Objective-C中设置指向nil的指针对该指针曾经指向的内容没有影响。