我有這麼定義的類:斯威夫特可選屬性錯誤
class User {
var name : String?
}
我使用的代碼使用它在我的ViewController:
import UIKit
class ViewController: UIViewController {
let user : User = User()
}
我有編譯錯誤
用戶()不可構造()
我知道Swift中的屬性必須有一個默認值,但是可選項有一個(nil)。如果我將屬性「name」初始化爲nil或添加init()初始化程序,錯誤消失。但我不明白爲什麼我的選項默認情況下不爲零。
順便說一句,在操場下面的代碼編譯完美:
class ViewController: UIViewController {
let user : User = User()
}
class User {
var name : String?
}
let vc = ViewController()
而且很奇怪。
此問題與this有關,但我不明白那裏的答案(爲什麼可選在操場上有默認值,但在應用程序中沒有?)。
編輯:只有在User類定義在一個單獨的文件中時,纔會發生錯誤。 Xcode是Beta 3中(見圖片)
是錯誤的工作不會出現在我的身邊。我沒有進一步的問題編譯這個項目。 – holex
您是否嘗試過將該項目作爲我編輯中的屏幕截圖? – valfer
錯誤也出現在當前的XCode 6.0 GM(6A313),Swift版本1.0中:-( – valfer