在 observeValueForKeyPath:ofObject:change:context:
- 为什么文档在不指定上下文指针时使用 NULL
而不是 nil
?
最佳答案
nil
只能用来代替 id
,我们 Java 和 C++ 程序员会认为它是指向对象的指针。对非对象指针使用 NULL
。
查看该方法的声明:
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object
change:(NSDictionary *)change context:(void *)context
Context 是一个 void *
(即一个 C 风格的指针),所以你肯定会使用 NULL
(它有时被声明为 (void * )0
) 而不是 nil
(类型为 id
)。
https://stackoverflow.com/questions/557582/
相关文章:
objective-c - 为什么 Objective-C 委托(delegate)通常被赋予属性分
ios - 从 UIView 到 UIViewController?
objective-c - 项目构建中的 CocoaPods 错误
ios - 具有 UITapGestureRecognizer 的 View 中的 UIButton
ios - 在 Objective-C 中检查空字符串的正确方法是什么?
ios - UIImageView 上的 UIGestureRecognizer
objective-c - 如何等待异步调度的 block 完成?