我对Objective-C方法重载有疑问。 Java支持方法重载与同名,不同类型参数的相同数量。但是当我尝试在Objective-C中做类似的声明时,它会抛出错误方法的重复声明。考虑下面的代码,Objective-C方法重载
/* Java */
int add(int i, int j);
int add(int i, int j, int k); // Accepted
float add(float i, float j); // Accepted
/* Objective-C */
- (int)add:(int)i and:(int)j;
- (int)add:(int)i and:(int)j and:(int)k; // Accepted
- (float)add:(float)i and:(float)j; // Throws error
为什么在Objective-C中不支持?有没有替代方案?
我对Objective-C中的方法重载也有疑问。我很确定它不存在。 – JeremyP 2011-02-10 08:44:50
当然,这不是因为你写了'flat'而不是'float'? :P:P – hauntsaninja 2011-02-10 08:54:54