let或struct vs enum

时间:2016-08-06 00:16:15

标签: swift struct enums

enum category: UInt32 {
    case fence = 1
    case paddle = 2
    case block = 4
    case ball = 8
}

struct category{
    static var fence:UInt32 = 1
    static var paddle:UInt32 = 2
    static var block:UInt32 = 4
    static var category:UInt32 = 8
}

尝试创建一组bitMasks,我想知道哪一个是正确的方法。

枚举还是结构?

1 个答案:

答案 0 :(得分:2)

你想要的是一个选项集。这是Swift允许你构建一个位掩码的方法,这样你就可以像一个集合那样操作它,这真的很不错。

Swift文档中有一个很好的例子:

https://developer.apple.com/library/ios/documentation/Swift/Reference/Swift_OptionSetType_Protocol/index.html

此处有更新版本:

https://developer.apple.com/reference/swift/optionset