草庐IT

objective-c - 为什么 Objective-C 方法名称的最后一部分必须带一个参数(当有多个部分时)?

在Objective-C中,您不能在最后一个组件不带参数的情况下声明方法名称。例如,以下是非法的。-(void)take:(id)theMoneyandRun;-(void)take:(id)yourMedicineandDontComplain;为什么Objective-C是这样设计的?它只是Smalltalk的产物,没有人认为需要摆脱吗?这个限制在Smalltalk中是有意义的,因为Smalltalk没有围绕消息调用的分隔符,所以最终组件将被解释为最后一个参数的一元消息。例如,BillyAndBobbytake:'$100'andRun将被解析为BillyAndBobbytake:

objective-c - 为什么 Objective-C 方法名称的最后一部分必须带一个参数(当有多个部分时)?

在Objective-C中,您不能在最后一个组件不带参数的情况下声明方法名称。例如,以下是非法的。-(void)take:(id)theMoneyandRun;-(void)take:(id)yourMedicineandDontComplain;为什么Objective-C是这样设计的?它只是Smalltalk的产物,没有人认为需要摆脱吗?这个限制在Smalltalk中是有意义的,因为Smalltalk没有围绕消息调用的分隔符,所以最终组件将被解释为最后一个参数的一元消息。例如,BillyAndBobbytake:'$100'andRun将被解析为BillyAndBobbytake: