objective-c - Objective C 中是否可以实现函数重载?

标签 objective-c overloading

在 Objective C 中可以实现函数重载吗?
嗯,大多数程序员说不,
但它看起来是可能的,
例如:

-(int)AddMethod:(int)X :(int)Y
{
    return X + Y;
}
-(int)AddMethod:(int)X
{
    return X;
}

要调用第一个写 [self AddMethod :3];
调用最后一个写 [self AddMethod: 3 :4];

最佳答案

方法重载在 Objective-C 中是不可能的。但是,您的示例实际上会起作用,因为您创建了两个具有不同选择器的不同 方法:-AddMethod::AddMethod:。每个交错参数都有一个冒号。放一些文字也是正常的,例如-addMethodX:Y: 但您不必这样做。

关于objective-c - Objective C 中是否可以实现函数重载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3666171/

相关文章:

c++ - 多态性和函数重载?

Java构造函数重载歧义

objective-c - 复制 NSDate 对象并释放

ios - 何时使用 UICollectionView 而不是 UITableView?

ios - 查询 TableView Controller

c# - 从泛型方法问题调用重载方法

ios - codepush 和 cocoapods 找不到 React/RCTEventEmitter.h

ios - Swift 中使用 NSJSONSerialization.dataWithJSONObject 和 dataUsingEncoding 组成 HTTP body 的区别

java - Java 中泛型的方法重载和参数

C++调用基类方法切片对象