【发布时间】:2016-11-07 22:23:14
【问题描述】:
如何使用花括号中传入的failureReason到方法launch,然后在方法中设置failureReason?
调用启动方法时出现此错误: 无法将类型 '(_) -> ()' 的值转换为预期的参数类型 'Date'
firstFalcon.launch() { failureReason in }
func launch(date: Date = Date()) {
self.launchDate = date.description
var failureReason = ""
if (fuelType == FuelType.water) {
failureReason = "too much fuel in fuel tank"
}
}
【问题讨论】:
-
XY-Problem。你不需要修复这个错误信息,你需要Error Handling。
-
不完全清楚为什么你首先要在这里使用闭包——对我来说,这看起来像是你可能希望
launch函数到throw一个自定义LaunchFailure错误。