枚举 – 在Swift中的Objective-C typedef枚举上的平等

前端之家收集整理的这篇文章主要介绍了枚举 – 在Swift中的Objective-C typedef枚举上的平等前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用 Swift的Facebook Objective-C SDK,我试图将一个FBSessionState值与枚举值进行比较.但是我收到编译器错误

Could not find an overload for ‘==’ that accepts the supplied arguments

我本来试图完成:

if state == FBSessionStateOpen { ... }

我可以通过比较价值来解决这个问题

if state.value == FBSessionStateOpen.value { ... }

但是我想知道是否有办法使这项工作更像是一个Swift枚举?

您可以使用’.value’解开枚举和常量来获取底层整数,这应该是可切换的:
switch x.value {
  case Foo.value:
}

也许这是一个bug和apple在未来的版本中解决它.

猜你在找的Swift相关文章