728x90
Mutating
구조제에 선언된 프로퍼티를 변경하기 위해서는 함수앞에 mutating이라는 말을 써주어야한다.
그래야 값을 변경하는지 아닌지 알수 있음
struct Todo: Codable, Equatable {
let id: Int
var isDone: Bool
var detail: String
var isToday: Bool
mutating func update(isDone: Bool, detail: String, isToday: Bool) {
// [x] TODO: update 로직 추가
self.isDone = isDone
self.detail = detail
self.isToday = isToday
}
// '=='이라는 조건을 정의 해주는 것.Equatable이라는 프로토콜을 넣어주면 우리 맘대로 정의 가능.
static func == (lhs: Self, rhs: Self) -> Bool {
// [x] TODO: 동등 조건 추가
return lhs.id == rhs.id
}
}
728x90
반응형
'🌙 iOS 스터디 > Swift' 카테고리의 다른 글
[Swift] GCD Dispatch Queue (0) | 2021.03.03 |
---|---|
[Swift] Equatable , Codable 프로토콜 (0) | 2021.02.05 |
[Swift] Computed Property vs Method (0) | 2021.01.14 |
[Swift] 스위프트 문서 정리 잘된 한국어 번역 (0) | 2021.01.13 |
[IOS] Swift 생소한 문법 정리 (0) | 2021.01.01 |