Nested type

Updated:

🔷 Nested type

struct MyPet {
enum Kind { // struct 안에 enum 타입
	case cat // kind enum 안의 case
	case dog
	// enum 은 value 와 name 이라는 변수를 가지고
	var value: String {
		switch self { // 자신의 타입에 따라 값이 부여
		case .cat:
			return "고양이"
		case .dog:
			return "강아지"
		}
	}
	var name: String {
		switch self {
		case .cat:
			return "개냥이"
		case .dog:
			return "멍멍이"
		}
	}
}
let kind: Kind // MyPet struct 가 가지는 kind 라는 변수
var description: String { // 값 확인을 위한 변수
	return "우리집 \(kind.value) '\(kind.name)' 입니다"
}
}

let myCat = MyPet(kind: .cat)
print(myCat.description) // 우리집 고양이 '개냥이' 입니다
let myDog = MyPet(kind: .dog)
print(myDog.description) // 우리집 고양이 '멍멍이' 입니다

Reference

Swift Tip of the day - 스위프트 기초 문법 - https://spangle-wedelia-2dc.notion.site/Swift-Tip-of-the-day-c428bfd990674bcfa2a4973e5d08c4eb

꼼꼼한 재은 씨의 스위프트 문법편 - https://book.jacobko.info/#/book/1186710233

Categories:

Updated:

Leave a comment