而在oc中,nil就至关于c、c++中的NULL指针,通常释放对象后将对象置为nil很是重要,这样能够防止引用非法指针致使程序崩溃掉。 c++
[obj release];//此时obj的引用计数为0 [obj someMethod];//程序崩溃 [obj release]; obj = nil; [obj someMethod];//obj此时为nil,但不会崩溃在objective-c中咱们只用nil来检查程序的逻辑,而不用于判断对象是否为空来避免崩溃。这与c++是不一样。objective-c在运行时会自动处理向nil对象发送消息(调用方法),不会报错崩溃掉。