嵌套类型(Nested Types)
枚举类型常被用于实现特定类或结构体的功能,也能够在有多种变量类型的环境中,方便地定义通用类或结构体来使用.
为了实现这种功能,Swift允许你定义嵌套类型,可以在枚举类型、类和结构体中定义支持嵌套的类型。
要在一个类型中嵌套另一个类型,将需要嵌套的类型的定义写在被嵌套类型的区域{}内,而且可以根据需要定义多级嵌套。
嵌套类型实例
类TheClass 中嵌套了 结构体TheStruct
结构体TheStruct 中嵌套了 枚举TheEnum
<pre>
<code>
`
class TheClass
{
var theStruct = TheStruct()
var description :String { return "Class" + " " + theStruct.description }
struct TheStruct
{
var theEnum = TheEnum.Case1
var description : String { return "Struct" + " " + theEnum.description }
enum TheEnum : String
{
case Case1
var description : String { return "Enum" }
}
}
}
`
</code>
</pre>
嵌套类型的引用
<pre>
<code>
`
let theClass = TheClass()
print(theClass.description)
let theStruct = TheClass.TheStruct()
print(theStruct.description)
let theEnum = TheClass.TheStruct.TheEnum.Case1
print(theEnum.description)
//打印
//Class Struct Enum
//Struct Enum
//Enum
`
</code>
</pre>