我在Youtube的一些視頻中看到了這一點。帶下劃線的變量聲明
class Student {
private var _name: String!
private var _studentID: Int!
var name: String {
return _name
}
var studentID:Int {
return _studentID
}
init(name: String, studentID: Int) {
self._name = name
self._studentID = studentID
}
}
任何原因,他們都在做這個(添加_name
和_studentID
)代替:
class Student {
private var name: String!
private var studentID: Int!
init(name: String, studentID: Int) {
self.name = name
self.studentID = studentID
}
}
非常感謝你。
rmaddy在下面的回答是正確的。但是這些模式只能在你真正需要公開只讀但私密可變時才能使用。但是你根本沒有改變它,這引出了你爲什麼不使用常量(用'let')來開始的問題。 '班級學生{讓名字:字符串;讓studentID:Int ...}'。或者,至少,爲什麼你使用隱含的可選項。爲什麼不使用值類型?我同意w rmaddy的結論,你不應該使用這些特定的視頻,因爲看起來你只會選擇壞習慣。 – Rob