iOS Swift 문법 - Mutating
포스트
취소

iOS Swift 문법 - Mutating

안녕하세요. narvis2 입니다.
이번시간에는 Swift 문법에 중에서도 Mutating에 대하여 알아보는 시간을 가지도록 하겠습니다.

🍀 Mutating


  • 값 타입Struct에서는 instance method 내에서 property들을 수정할 수 없게 되어 있음

    ❗️ Error ❗️

    • Cannot assign property 👉 값 타입Struct에서는 method안의 값을 수정할 수 없기 때문에 발생
  • 이러한 property들을 Struct안의 method에서 수정을 해주기 위해 mutating이라는 키워드를 사용
  • mutating 👉 특정 method내에서 Struct 또는 Enum property를 수정해야 하는 경우 해당 method의 동작을 변경하도록 하는 것
  • StructEnum을 쓸때는 정말 중요한 키워드

예제 👇

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
struct Person {
    let name: String
    var age: Int

    init (name: String, age: Int) {
        self.name = name.uppercased()
        self.age = age
    }

    // mutating 키워드를 사용하지 않으면 Cannot assign property Error 발생
    mutating func changeAge() {
        age = 10
    }
}

var choi = Person(name: "choi", age: 29)
choi.changeAge()
print(choi.age)
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.