Swift에서 계산 된 속성을 만들려고하고 있는데 속성의 상태를 저장하기 위해 인스턴스 변수가 필요합니다.인스턴스 변수가있는 Swift에서 신속하게 계산 된 속성?
내 슈퍼 클래스의 속성 무시려고 할 때 특별히 발생합니다
class Jedi {
var lightSaberColor = "Blue"
}
class Sith: Jedi {
var _color = "Red"
override var lightSaberColor : String{
get{
return _color
}
set{
_color = newValue
}
}
}
그 컴파일러가 할 수있는 유일한 방법이기 때문에이 계산 된 속성과 제다이에 저장된 속성 lightSaberColor을 무시하고 있습니다를 나를. 또한 getter와 setter를 만들도록 강요합니다. 그리고 그것이 내가 곤경에 처했을 때입니다.
지금까지 내가 찾은 유일한 방법은이 여분의 추악한 var _color
을 정의하는 것입니다. 그대가 더 우아한 해결책입니까?
속성 블록 내에 _color
을 정의하려고 시도했지만 컴파일되지 않습니다.
더 좋은 방법이 있어야합니다!
왜 속성을 재정의해야합니까? 그 뒤에는 이유가 있어야하며, 적절한 대답을 제공하기 위해 도움을 줄 수 있다고 생각합니다. – Antonio
단지 예일뿐입니다. 진짜 문제는 계산 된 속성에서 iVars를 처리하는 방법입니다. – cfischer
왜 같은 문제에 대해 2 개의 질문을 열지? 하나를 닫으십시오. – Shuo