Swift 2.0“意想不到的结尾”错误与懒惰无功分配
我正在将项目转换为Swift 2.0,并且在使用惰性variables的任何地方都会遇到此错误。 这个代码在1.2中完美工作,但在2.0中打破:
lazy private var placeholderImage = UIImage(named: "theImage")
但是,这段代码在2.0中产生了一个“意外的尾随闭包”错误。
遵循Xcode的build议来解决这个错误,这就是我所提出的:
lazy private var placeholderImage: UIImage = UIImage(named: "theImage")!
这编译和似乎工作,但我不明白为什么改变是必要的。
在苹果开发者论坛上,一位苹果员工( ChrisLatner )表示:
是的,这是一个已知的错误(并经常报告)types推断与惰性属性不能正常工作。 添加显式types注释是现在解决这个问题的最好方法。
这个Google小组也讨论了这个问题