develop
Reference Equal 참조 비교하기 본문
반응형
== 는 비교 연산자로 많이 사용이 되고 인스턴스의 값이 같은지 비교를 한다.
비교 연산자에서 =을 하나 더 붙인 === 연산자가 있는데 이 연산자는 인스턴스의 참조가 같은지
즉, 주소값이 같은지 비교를 한다.
class Example {
var value: Int?
}
let example1 = Example()
let example2 = Example()
let example3 = example1
print("example1 === example2: \(example1 === example2)")
print("example1 === example3: \(example1 === example3)")
example1 === example2: false
example1 === example3: true
example1과 example2는 클래스는 같지만 다른 주소값을 참조하고 있다.
example3은 example1과 같은 주소값을 참조하고 있다.
class Example2: Example {
}
let example4 = Example2()
let example5: Example = example4
print("example4 === example5: \(example4 === example5)")
example4 === example5: true
반응형
'iOS' 카테고리의 다른 글
Property(Stored Property, Lazy Property, Computed Property, Property Observers, Type Property) (0) | 2021.02.01 |
---|---|
KVC KVO (Key-Value Coding, Key-Value Observing) (0) | 2021.01.31 |
Struct Mutating (0) | 2021.01.30 |
Require (0) | 2021.01.29 |
Class convenience init (0) | 2021.01.28 |
Comments