Objective c 如果A==B,这是否意味着[A等:B]是真的?
我刚发现一个bug。跟踪bug时,我发现当A(因此B)为nil时,这是违反的 我只是想确保我没有遗漏任何东西Objective c 如果A==B,这是否意味着[A等:B]是真的?,objective-c,Objective C,我刚发现一个bug。跟踪bug时,我发现当A(因此B)为nil时,这是违反的 我只是想确保我没有遗漏任何东西 这个问题的答案是真的还是我只是发现了一个例外?发送到nil的消息的返回码将始终为0,这相当于否或false。因此,你观察到的行为是预期的和正确的,即使它可能看起来并不完全直观。不同的nil对象并不完全相等,因为nil实际上没有标识。发送到nil的消息返回的代码将始终为0,这等于NO或false。因此,你观察到的行为是预期的和正确的,即使它可能看起来并不完全直观。不同的nil对象并不完全相
这个问题的答案是真的还是我只是发现了一个例外?发送到
nil
的消息的返回码将始终为0,这相当于否
或false。因此,你观察到的行为是预期的和正确的,即使它可能看起来并不完全直观。不同的nil
对象并不完全相等,因为nil
实际上没有标识。发送到nil
的消息返回的代码将始终为0,这等于NO
或false。因此,你观察到的行为是预期的和正确的,即使它可能看起来并不完全直观。不同的nil
对象并不完全相等,因为nil
实际上没有标识。在Objective-c中,当a为nil时,可以向nil对象发送消息,即[a isEqual:B]。但是你不能期望一个nil对象返回一个结果!我还没有找到Apple ref,但我怀疑返回值未定义或设置为nil/false/0本身。在Objective-c中,当a为nil时,可以向nil对象发送消息,即[a isEqual:B]。但是你不能期望一个nil对象返回一个结果!我还没有找到Apple ref,但我怀疑返回值未定义或设置为nil/false/0本身。向nil
发送消息可以返回值,并记录在此处:。(尽管我没有投反对票)@MartinR我确实怀疑(并且应该知道)会返回一个值,但我试图指出的是,目标类中没有逻辑会/可能被执行。向nil
发送消息可以返回一个值,并记录在此处:。(虽然我没有否决)@MartinR我确实怀疑(并且应该知道)会返回一个值,但我想说的是,目标类中没有逻辑会被执行。谢谢,我需要确认。谢谢,我需要确认。