一尘不染

使用保留关键字枚举

swift

枚举大小写是否可以使用保留关键字?

例如:

enum MyEnum {
  case Self // compiler complains here
  case AnotherCase
}

在其他语言中,这可以通过以某种方式转义关键字来实现,例如在scala中,我们使用反引号,例如

`type`

尽管type是保留关键字,但仍可以用作标识符。

迅速有类似的东西吗?


阅读 220

收藏
2020-07-07

共1个答案

一尘不染

从《 Swift语言指南》(“
命名常量和变量”部分

如果需要为常量或变量提供与保留的Swift关键字相同的名称,则在使用该关键字作为名称时,请在关键字前后加上反斜线(`)。
但是,除非绝对没有选择,否则避免将关键字用作名称。

enum MyEnum {
  case `Self`
  case AnotherCase
}

并在有或没有反引号的情况下使用

let x: MyEnum = .Self
let y = MyEnum.`Self`
2020-07-07