這邊搞不懂 為什麼不能用 ,初學swift 請解惑 謝謝。

這邊搞不懂 為什麼不能用 ,初學swift 請解惑 謝謝。
在条件运算符(ternary operator)后
在 chooserFunc
函数中,条件运算符 ?
后面应该有一个冒号表示表达式的类型。这里是修正后的部分代码:
func chooserFunc(isSub: Bool) -> (Int, Int) -> Int {
return isSub ? asd : zxc // 在这里添加了冒号
}
错误二:函数定义中的拼写错误
您定义了一个名为 qww
的函数,但在调用 getresult
时,它应该是 zxc
。同样地,另一个函数 ert
应该是 asd
。这是修正后的函数调用部分:
getresult(vall: zxc, c: 10, v: 6)
getresult(vall: asd, c: 10, v: 6)
错误三:变量定义的语法错误
变量 b
的赋值有误,应该是 b = 10
,而不是 b .= 10
。下面是修正后的变量定义:
var a = 5, b = 10
错误四:导入模块错误 看起来你在使用 playground 或者 Xcode 中遇到了导入模块的错误,但这个错误信息没有包含在您提供的代码中。确保您的项目正确设置了依赖项,并且没有其他编译错误。
下面是所有错误修复后的完整代码:
func getresult(vall: (Int, Int) -> Int, c: Int, v: Int) {
print(vall(c, v))
}
func zxc(x: Int, y: Int) -> Int {
return x + y
}
func asd(x: Int, y: Int) -> Int {
return x - y
}
func chooserFunc(isSub: Bool) -> (Int, Int) -> Int {
return isSub ? asd : zxc
}
var a = 5, b = 10
let addOrSub = chooserFunc(isSub: (a - b > 0))
print(addOrSub(a, b))
这段代码定义了一些基本的函数,包括两个用于加法和减法的函数 (zxc
和 asd
),以及一个根据传入的布尔值选择执行加法或减法的函数 chooserFunc
。然后我们创建了两个变量 a
和 b
,并根据 a - b > 0
的结果选择了合适的操作。最后打印出计算结果。如果您还有其他疑问,请随时告诉我。