Swift

时间:2015-09-01 14:56:18

标签: ios xcode swift

func performOperation(operation: (Double, Double) -> Double){
    if operandStack.count >= 2 {
        displayValue = operation(operandStack.removeLast(), operandStack.removeLast())
        enter()
    }
}

func performOperation(operation: Double -> Double) {
    if operandStack.count >= 1 {
        displayValue = operation(operandStack.removeLast())
        enter()
    }
}

显示的错误是“方法'performOperation',其中Objective-C选择器'performOperation:'与之前的声明冲突,使用相同的Objective-C选择器” 此错误显示在第二个函数中。

我想使用两个名称相同但输入类型不同的函数,但Xcode显示错误。我该如何纠正错误?

1 个答案:

答案 0 :(得分:0)

Objective-C不支持方法重载。当您继承UIViewController时,您继承了NSObject并使该类可以与Obj-C互操作。另一方面,Swift确实支持重载,这就是删除继承时它的工作原理。