要验证对象是否存在,这还不够吗?
if (object) ...
或者我必须执行以下操作:
if (object != NULL) ...
谢谢!
答案 0 :(得分:1)
不会验证对象是否存在。他们检查object
指针变量是否指向任何东西。
第一种是更明确的第二种形式的可接受和常见的形式。
答案 1 :(得分:1)
在Objective-C中常用nil
。这意味着你的指针指向任何东西。因此,如果要检查是否存在指向对象,可以执行if (obj != nil) { ... }
。或者将其简化为if (obj) { ... }
。但您也可以使用NULL
代替nil
,因此您的示例都会执行相同操作。
There is关于此主题的精彩文章。
此外,您应该知道在Obj-C世界中,您可以向nil
发送消息。没有NullPointerException,下面的代码什么都不做:
UIView *view = nil;
[view removeFromSuperView];