iOS/Swift

[Swift] 클래스와 스트럭트

단비_danbee 2022. 12. 1. 12:49

https://jusung.gitbook.io/the-swift-language-guide/language-guide/09-classes-and-structures

 

클래스과 구조체 (Classes and Structures) - The Swift Language Guide (한국어)

Swift에서는 String, Array, Dictionary 같은 기본 데이터 타입이 구조체로 구현 돼 있습니다. 그렇다는 의미는 이 값을 다른 상수나 변수에 할당하거나 함수나 메소드에 인자로 넘길 때 이 값이 복사 된

jusung.gitbook.io

 

클래스와 스트럭트란?

= 데이터들의 덩어리, 데이터를 모아놓은 모델

= 사본을 만들어 사용 할 수 있는 것

 

import UIKit

// 데이터들의 덩어리, 유튜버라는 모델
struct YoutuberStruct {
    var name : String
    var subscriberCount : Int
}

// struct 라는 문서를 복사한 것, 값 복사
var devDanbee = YoutuberStruct(name:"단비", subscriberCount: 9999)
print("값 넣기 전 devDanbee.name : \(devDanbee.name)")

devDanbee.name="danbee"
print("값 넣은 후 devDanbee.name : \(devDanbee.name)")

// 클래스
class YoutuberClass {
    var name : String
    var subscriberCount : Int
    
    //init (생성자) 메모리에 이제 올리겠다
    init(name: String, subscriberCount: Int){
        self.name = name
        self.subscriberCount = subscriberCount
    }
}

var danbeePark = YoutuberClass (name: "단비", subscriberCount: 1111)
print("danbeePark : \(danbeePark.name)")

var danbeeParkClone = danbeePark
danbeeParkClone.name = "변경된 이름"
print("danbeeParkClone : \(danbeeParkClone.name)")