Swift/Swift 기초 문법

[기초] 클래스 vs 스트럭트

hyunjuntyler 2023. 3. 26. 01:28

classstruct의 차이! 간단하게 정리해 보면 class는 연결되어 있고, struct는 연결되어 있지 않다! 그리고 print를 해보면서 느낀건데 structfoodStruct(name: "Chicken", price: 18000) 같은 형식으로 출력이 되지만 class는 그렇게 출력이 되지 않는다!

struct foodStruct {
    var name : String
    var price : Int
}

var a = foodStruct(name: "Chicken", price: 18000)
var b = a
b.price = 20000

print(a)
print(b.name, b.price)

foodStruct(name: "Chicken", price: 18000) 

Chicken 20000

 

이렇게 출력된다!

class foodClass {
    var name : String
    var price : Int
    
    // 생성자
    // init으로 매개변수를 가진 생성자 메소드를 만들어야
    // 매개변수를 넣어서 그값을 가진 객체(object)를 만들수 있다.
    
    init(name: String, price: Int){
        self.name = name
        self.price = price
    }
}

var c = foodClass(name: "Chicken", price: 18000)
var d = c

print(d.price)
d.price = 20000
print(d.price)
print(c.price)

18000

20000

20000

 

dprice를 변경했는데 c도 같이 변경된 것을 알 수 있었다!

 

출처

 

[무료] 개발하는 정대리 스위프트 기초 문법 - 인프런 | 강의

“이 정도는 알겠지” 하고 넘어가는 강의는 그만! 초등학생도 이해할 수 있는 강의를 통해 스위프트 기초 문법을 익혀보세요! iOS 앱 개발을 하는데 큰 힘이 되실 거예요!, - 강의 소개 | 인프런

www.inflearn.com

 

'Swift > Swift 기초 문법' 카테고리의 다른 글

[기초] 제네릭  (0) 2023.03.26
[기초] 프로퍼티 옵저버, 함수 매개변수 이름  (0) 2023.03.26
[기초] Unwrap 옵셔널변수  (0) 2023.03.26
[기초] 반복문  (0) 2023.03.26
[기초] enum 케이스 나누기  (0) 2023.03.25