Swift:不同版本的XCode会出现不同的错误

时间:2015-10-10 22:17:35

标签: xcode swift swift2

我刚开始学习Swift编程语言,并在XCode版本6.4的操场上玩它。我刚刚下载了XCode版本7.1测试版,因为我正在上Swift的在线课程,需要我下载XCode 7的课程。当我打开操场时,我正在使用XCode 7.1在XCode 6.4中进行操作时出现了一些错误。在版本6.4中显示。我想这是有道理的,但我想知道你是否可以看看发生的事情,并解释它为什么会这样做。

现场1:

func walk(stepSize: Int, doIStep: Bool) -> Int {
    var x = 0
    if doIStep {
        x += stepSize
    }
    return x
}
func doStep() -> Bool {
    return true
}
walk(20, doStep())

(此行上的错误Missing argument label 'DoIStep:' in call

现场2:

func findSum(number1: Int, number2: Int) -> Int {
    var sum = 0
    func addNumbers() {
        sum = number1 + number2
    }
    addNumbers()
    return sum
}
findSum(20, 39)

(此行上的错误Missing argument label 'number2:' in call

抱歉,我知道这是一个很长的问题,但我很感激任何答案!谢谢!

1 个答案:

答案 0 :(得分:1)

使用这些功能应如下所示:

import readline
import subprocess
readline.parse_and_bind('"\\C-w": backward-kill-word')
subprocess.call(['stty', 'werase', 'undef'])

为了在调用函数时跳过第二个参数名,你必须像这样声明它:

walk(20, doIStep: doStep())
findSum(20, number2: 39)

XCode 7默认支持Swift 2,但我认为不是这里的情况。我认为XCode 6.4也应该显示错误,不知道它为什么没有。