Swift REPL中的变量声明必须具有初始值
学习闭包的快速语法声明。我有一个问题:Swift REPL中的变量声明必须具有初始值,swift,read-eval-print-loop,variable-declaration,Swift,Read Eval Print Loop,Variable Declaration,学习闭包的快速语法声明。我有一个问题: let add: (Int, Int) -> Int add = { (a: Int, b: Int) -> Int in return a + b } 错误: 在REPL的顶层输入变量时,当前必须具有初始值 变量添加:(Int,Int)->Int Swift没有单独的没有赋值的变量声明(将nil赋值给一个可选变量是最接近的),因此最简单的修复方法是: let add: (Int, Int) -> Int = { (a: In
let add: (Int, Int) -> Int
add = { (a: Int, b: Int) -> Int in
return a + b
}
错误:
在REPL的顶层输入变量时,当前必须具有初始值
变量添加:(Int,Int)->Int
Swift没有单独的没有赋值的变量声明(将nil赋值给一个可选变量是最接近的),因此最简单的修复方法是:
let add: (Int, Int) -> Int = { (a: Int, b: Int) -> Int in
return a + b
}
正如评论者正确指出的,正如错误消息中所指出的,我的声明仅在读取-评估-打印循环(REPL)的顶层是正确的。这不是完全正确的。Swift有单独的变量声明,没有赋值。你不能在最高层做到这一点。您可以在控制台应用程序或函数中顺利完成此操作。这仅适用于REPL。完全合法: