通常我们会想当然地认为,我们可以把任何想要的消息发送给代码中类型为“id”的变量,然后Objective-C的动态消息处理就会在运行时让这一调用 正确地工作。但在某些罕见的情况下,这种假定是错误的。在本文中,我将着眼于几种你需要谨慎处理的情况,在这些情况下,给"id"类型的变量发送消息要小 心;并且我还会谈到这样的一种情形,即Objective-C存在的一个局限性需要我们以一种丑陋的权变做法来避免一些严重的错误。
Objective-C中id类型变量消息处理的局限与权变
本文探讨了Objective-C中给id类型变量发送消息时需谨慎处理的情况,指出了一种需要避免严重错误的丑陋权变做法,并强调了Objective-C动态消息处理的局限性。
通常我们会想当然地认为,我们可以把任何想要的消息发送给代码中类型为“id”的变量,然后Objective-C的动态消息处理就会在运行时让这一调用 正确地工作。但在某些罕见的情况下,这种假定是错误的。在本文中,我将着眼于几种你需要谨慎处理的情况,在这些情况下,给"id"类型的变量发送消息要小 心;并且我还会谈到这样的一种情形,即Objective-C存在的一个局限性需要我们以一种丑陋的权变做法来避免一些严重的错误。

被折叠的 条评论
为什么被折叠?