作为一个正在阅读苹果的 Objective-C 2.0文档的 Java 开发人员: 我想知道“ 发送消息到零”是什么意思——更不用说它实际上是如何有用的了。以下是文件摘录:
Cocoa 有几种模式 利用这一事实 从消息返回的值为零 也可能是有效的:
- 如果该方法返回一个对象、任何指针类型、任何整数标量 尺寸小于或等于 Sizeof (void *)、 float、 double、 a 长的双倍,或者长的长的,然后一个 发送到 nil 的消息返回0。
- 如果该方法返回由 MacOSXABI 函数定义的 struct 打电话叫导游回来 寄存器,然后发送一条消息到 nil 中的每个字段返回0.0 数据结构。其他结构数据 类型不会用零填充。
- 如果该方法返回上述值以外的任何值 键入消息的返回值 发送到空是未定义的。
Java 是否让我的大脑无法理解上面的解释?还是我错过了什么能让这一切如玻璃般清晰?
我确实在 Objective-C 中得到了消息/接收者的概念,我只是对碰巧是 nil
的接收者感到困惑。