0
以下代碼的在遊樂場的聲明得到:返回而不初始化爲結構聲明所有存儲屬性誤差在遊樂場
「從初始化返回而不初始化所有存儲的屬性」
struct Height {
var heightInInches: Double
var heightInCentimeters: Double
init(heightInInches: Double) {
self.heightInInches = heightInInches // here's the compile error
}
init(heightInCentimeters: Double) {
heightInInches = heightInCentimeters * 2.54 // here's the compile error
}
}
請幫我糾正語法。
你需要在init方法返回之前初始化這兩個變量,爲了避免這種情況,你可以聲明這個爲惰性變量或聲明爲optionals,實際上我認爲最好的方法是初始化只有一個變量,另一個將被計算一個 –
是的,你的一個變量應該是一個計算變量。另請看[NSMeasurement](https://developer.apple.com/documentation/foundation/nsmeasurement) – Paulw11