-
[Swift] 구조체(struct)와 클래스(class)iOS/Swift 2022. 8. 2. 20:44
구조체와 클래스의 사용 목적
- 데이터를 용도에 맞게 묶어서 표현하고자 할 때
- 새로운 사용자 정의 데이터 타입을 만들어 주는 것
구조체 클래스 값 타입 참조 타입 인스턴스를 let으로 선언 시 내부 프로퍼티 값 변경X 인스턴스를 let으로 선언 시 내부 프로퍼티 값 변경O 상속 불가 상속 가능 타입 캐스팅 불가 타입 캐스팅 가능 디이니셜라이저X 디이니셜라이저O (메모리 소멸) 기본적으로 저장 프로퍼티를 매개변수로 갖는 이니셜라이저O 프로퍼티 기본값을 지정하지 않으면 이니셜라이저 따로 정의 /
사용자 정의 이니셜라이저 호출구조체 예시
// 구조체 정의 struct BasicInformation { var name: String var age: Int } // 구조체 인스턴스 생성 및 사용 var yeonsuInfo: BasicInformation = BasicInformation(name: "yeonsu", age: 24) yeonsuInfo.age = 100 yeonsuInfo.name = "Bonny"
클래스 예시
// 클래스 정의 class Diet { var height: Float = 0.0 var weight: Float = 0.0 } // 클래스 인스턴스 생성 및 사용 var yeonsu: Diet = Diet() yeonsu.height = 166.8
'iOS > Swift' 카테고리의 다른 글
[Swift] 인스턴스(instance) (0) 2022.08.03 [Swift] 프로퍼티(property) (0) 2022.08.02 [Swift] 옵셔널(Optional) (0) 2022.07.26 [Swift] 조건문(Conditional), 반복문(Loop) (0) 2022.07.26 [Swift] 함수(Func) - 고급 (0) 2022.07.25