当前位置 : 主页 > 手机开发 > 其它 >

swift – 可比较的Enum与Int

来源:互联网 收集:自由互联 发布时间:2021-06-11
要比较具有Int作为我添加的原始值的枚举: func T: RawRepresentable(a: T, b: T) - Bool where T.RawValue: Comparable { return a.rawValue b.rawValue} 现在我能做到: enum Foo: Int { case a = 1 case b = 2}let a = Foo.alet
要比较具有Int作为我添加的原始值的枚举:

func  <<T: RawRepresentable>(a: T, b: T) -> Bool where T.RawValue: Comparable {
    return a.rawValue < b.rawValue
}

现在我能做到:

enum Foo: Int {
    case a = 1
    case b = 2
}

let a = Foo.a
let b = Foo.b

print(a < b) // true

但是我应该如何制作它以便我能比较以下枚举:

print(b < 1) // error
你会做更多你正在做的事情:

func <<T:RawRepresentable>(a:T, b:Int) -> Bool where T.RawValue == Int {
    return a.rawValue < b
}
网友评论