Chi*_*ron 11 overloading objective-c
Objective-C不支持方法重载.
为什么?
是否可行,但Apple决定不实施它?或者由于Objective-C的动态特性,它是不可行的?
我的印象是方法重载可以在编译语言(Java,C#)上完成,而不能在解释语言(Ruby,Python)上完成.
有一些真实的吗?
Chu*_*uck 27
这里的区别不在于编译语言和解释语言之间,而是在静态类型(Java,C#)和动态类型(Ruby,Python,Objective-C)之间.在动态类型语言中,类型信息通常直到运行时才知道.在运行时,所有对象都是id在Objective-C 中静态类型化的.
此外,动态类型OO语言的核心思想是,只要对象响应您要发送的消息,就不应该关心对象的类型.因此,基于类型的重载将直接面对它.