繁体   English   中英

枚举的原始值,类/结构的默认值,有什么不同?

[英]Raw Value of Enumeration, Default value of a class/structure, What's the different?

在Swift中,枚举中包含原始值 ,而类和结构中包含默认值 有什么不同? 有人可以帮我解释一下吗?

例如 枚举的原始值(来自Office Swift文档)

enum ASCIIControlCaracter: Character {
    case Tab = "\t"
    case LineFeed = "\n"
    case CarriageReturn = "\r"
}

来自Apple文档

原始值

关联值中的条形码示例显示了枚举的情况如何声明它们存储了不同类型的关联值。 作为关联值的替代方法,枚举案例可以预先填充默认值(称为原始值),这些默认值都是相同的类型。

所以我想是一样的。

另一方面,对于“默认值”,您可能是指未设置任何值的枚举情况的默认值,例如:

enum TestEnum: Int  {    
    case A
    case B    
}

在这里, TestEnum.A的默认值为0 ,而TestEnum.B的默认值为1

原始值是指枚举实例的实际值(在枚举类型中,在此示例中为Int ):

enum TestEnum: Int  {    
    case A
    case B = 3   
}

在这里, TestEnum.A的默认值(也是原始值)为0 ,而TestEnum.B的原始值是3 (不再是默认值)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM