添加‘实例值’小节的部分翻译

This commit is contained in:
yankuangshi
2014-06-07 23:52:03 +02:00
parent 364bb30aae
commit 1662361138

View File

@ -93,3 +93,13 @@
## 实例值associated values ## 实例值associated values
上一小节的例子演示了一个枚举的成员是如何被定义(分类)的。你可以为`Planet.Earth`设置一个常量或则变量,并且在之后查看这个值。然而,有时候会很有用如果能够把其他类型的实例值和成员值一起存储起来。这能让你随着成员值存储额外的自定义信息,并且当每次你在代码中利用该成员时允许这个信息产生变化。
你可以定义Swift的枚举存储任何类型的实例值如果需要的话每个成员的数据类型可以是各不相同的。枚举的这种特性跟其他语言中的可辨识联合discriminated unions标签联合tagged unions或者变体variants相似。
例如假设一个库存跟踪系统需要利用两种不同类型的条形码来跟踪商品。有些商品上标有UPC-A格式的一维码它使用数字0到9.每一个条形码都有一个代表“数字系统”的数字该数字后接10个代表“标识符”的数字。最后一个数字是“检查”位用来验证代码是否被正确扫描
其他商品上标有QR码格式的二维码它可以使用任何ISO8859-1字符并且可以编码一个最多拥有2,953字符的字符串。
对于库存跟踪系统来说能够把UPC-A码作为三个整型值的元组和把QR码作为一个任何长度的字符串存储起来是方便的。