중첩된 타입

JG Ahn·2024년 11월 8일

swift 기초

목록 보기
21/23
post-thumbnail

중첩된 타입

  • 타입 안에 다른 타입을 정의하는 것
  • class, enum, struct에서 사용 가능
  • 코드의 가독성을 높이고 타입간의 연관성을 명확히 함
struct Car {
    struct Company { // Car 안에 중첩된 Company 구조체
        var name: String
        var phoneNumber: String
        
        func contact() {
            print("\(name) 회사의 A/S 센터 번호는 \(phoneNumber)입니다.")
        }
    }
    
    enum Model {
        case sedan
        case hatchback
        case suv
    }
    
    var model: Model
    var company: Company
    var name: String
    var color: String
}


let myCar = Car(model: .sedan, 
                company: Car.Company(name: "스파르타!", phoneNumber: "000-000-000"),
// company: .init(name: "스파르타!", phoneNumber: "000-000-000"),// .init을 해서 만들어도 가능
                name: "붕붕이",
                color: "Black")
                
//myCar의 company 프로퍼티의 contact 함수를 호출
myCar.company.contact() //결과값 : 스파르타! 회사의 A/S 센터 번호는 000-000-000입니다.
print(myCar.model) // myCal의 model 프로퍼티 출력

0개의 댓글