본문 바로가기
Smart Device/Swift

Swift Initialization 상수 속성의 변경

by 언덕너머에 2015. 6. 23.

Initialization 상수 속성의 변경

상수(constant)는 수정이나 변경이 불가능하지만 Swift의 initialization(초기화)에서는 변경할 수 있다.

좀 더 엄밀히 말하면 초기화 할때만 변경할 수 있다. 초기화 이후에는 변경할 수 없다.


class SurveyQuestion {

    let text: String

    var response: String?

    init(text: String) {

        self.text = text

    }

    func ask() {

        println(text)

    }

    func responsePrint() {

        println(response)

    }

}

let beetsQuestion = SurveyQuestion(text: "How about beets?")

beetsQuestion.ask()

// --> How about beets?

beetsQuestion.response = "I also like beets. (But not with cheese.)"

beetsQuestion.responsePrint()

// --> Optional("I also like beets. (But not with cheese.)")


위 소스에서 Optional Type인 경우 상수로 선언하고 초기화 하지 않을 경우 다음과 같은 오류가

발생한다.

Return from initializer without initializing all stored properties


'Smart Device > Swift' 카테고리의 다른 글

Swift Deinitialization  (0) 2015.06.24
Swift Initializer Delegation for Value Types  (0) 2015.06.24
Swift Playground에서 console output 보여주기  (0) 2015.06.23
Swift Initialization Optional  (0) 2015.06.23
Swift Initialization Parameter  (0) 2015.06.23