嵌套类型的定义位置与使用
struct Cards {
let num:CardNum
let suit:CardSuit
enum CardNum:Int { // 类型嵌套
case ace = 1,two,three,four,five,six,seven,eight,nine,ten
case jack,queen,king
}
enum CardSuit:Character {
case spades = "♠", hearts = "♡", diamonds = "♢", clubs = "♣"
}
}
var card = Cards.init(num: .ace, suit: .hearts)// 嵌套类型可以通过上下文推导,直接调用
print(Cards.CardSuit.hearts.rawValue)// 外部引用嵌套类型时,需要在类型前加入外部类型前缀
网友评论