* Class와 Struct 차이 비교
- class : Heap(느림) / struct : Stack(빠름)
- structure은 Copy(복사 = 별도로 관리) 개념, class는 Share(공유 = 같은 곳을 바라봄) 개념
<전체 코드>
import UIKit
struct PersonStruct {
var firstName: String
var lastName: String
var fullName: String {
return "\(firstName) \(lastName)"
}
mutating func uppercaseName() {
firstName = firstName.uppercased()
lastName = lastName.uppercased()
}
}
class PersonClass {
var firstName: String
var lastName: String
init(firstName: String, lastName: String) {
self.firstName = firstName
self.lastName = lastName
}
var fullName: String {
return "\(firstName) \(lastName)"
}
}
var personStruct1 = PersonStruct(firstName: "hoyadev", lastName: "Lee")
var personStruct2 = personStruct1
var personClass1 = PersonClass(firstName: "hoyadev", lastName: "Lee")
var personClass2 = personClass1
personStruct2.firstName = "Jay"
personStruct1.firstName
personStruct2.firstName
personClass2.firstName = "Jay"
personClass1.firstName
personClass2.firstName
personClass2 = PersonClass(firstName: "Bob", lastName: "Lee") // 새로 생성한 클래스 객체를 참조
personClass1.firstName
personClass2.firstName
personClass1 = personClass2 // 신규 생성된 객체로 참조 설정
personClass1.firstName
personClass2.firstName
'iOS' 카테고리의 다른 글
[18일차] Class 생성자 이해하기 (2-phase Initialization) (0) | 2020.08.07 |
---|---|
[17일차] Class와 Struct를 사용해야 할 때 (0) | 2020.08.05 |
[15일차] Property vs Method (0) | 2020.08.04 |
[14일차] Structure Property (구조 프로퍼티) 학습 (0) | 2020.07.31 |
[13일차] Structure(구조)와 Class (0) | 2020.07.30 |
댓글