class SomeClass { var someProperty: Int { throw Err("SNAFU") } }
对于上述代码,快速二进制文件抱怨“未处理错误,因为未将封闭函数声明为” throws”。
我如何在上面声明“ someProperty”“抛出”?
class SomeClass { var someProperty throws: Int { } }
和
class SomeClass { var someProperty: throws Int { } }
class SomeClass { var someProperty: Int throws { } }
似乎不起作用。
Swift 5更新:仍然不可能。
从Swift 3开始:
您不能从计算的属性中抛出。如果要抛出,必须使用一个函数。Swift编程语言末尾的“ 语言参考”部分的“声明”部分仅列出(和)作为函数和初始化声明的关键字。throws``rethrows
throws``rethrows