저장 속성과 지연 저장속성
저장 속성 (Stored Properties)
클래스 / 구조체 의 틀에서 찍어낸 각 인스턴스가 가지는 고유의 데이터 저장 공간
변수나 상수로 선언 가능
객체의 초기화시, 각 저장 속성은 반드시 값을 가져야함
struct Bird {
var name = "새"
var weight = 0.0
func fly() {
print("날아갑니다.")
}
}
지연 저장 속성
해당 속성이 반드시 처음부터 초기화가 필요하지 않은 경우(일반적으로 많은 메모리 공간을
차지하는 이미지 등)에 초기화를 지연시킴
값에 대한 접근이 있어야 초기화
lazy var로만 선언 가능(lazy let 안됨)
생성자에서 초기화하지 않기 때문에 반드시 기본값이 필요
지연 저장 속성 사용의 2가지 이유
1) 메모리 공간의 낭비를 막을 수 있음
2) 지연 저장 속성으로 선언되는 속성이 다른 저장 속성을 이용해야할때
class AView {
var a: Int = 0
lazy var view = UIImageView()
lazy var b: Int = {
return a * 10
}()
}
'내배캠 사전캠프 > 내배캠 사전캠프 TIL' 카테고리의 다른 글
241008 내배캠 사전캠프 TIL (1) | 2024.10.08 |
---|---|
241009 내배캠 사전캠프 TIL (0) | 2024.10.07 |
241002 내배캠 사전캠프 TIL (0) | 2024.10.02 |
240930 내배캠 사전캠프 TIL (0) | 2024.09.30 |
240927 내배캠 사전캠프 TIL (0) | 2024.09.27 |