在swift中使用变量声明的switch案例中的漏洞

时间:2015-11-11 15:35:56

标签: ios swift enums switch-statement

所以,我学习swift并且遇到问题,我试图为我的枚举创建一个计算属性,我想在带有变量声明的switch case中使用fallthrough,这里&#39 ;代码:

enum myEnum {
  case FirstMethod(Int)
  case SecondMethod(Int)

  var path: String {
    switch self {
    case .FirstMethod(let id):
      fallthrough
    case .SecondMethod(let id):
      return "(/\(id)"
    }
  }
}

这不起作用,我得到以下编译错误:

'falltrhough' cannot transfer control to a case label that declares variables

我也尝试过:

var path: String {
    switch self {
    case .FirstMethod(let id), .SecondMethod(let id):
      return "(/\(id)"
    }
}

我也没有工作,我得到了:

'case' labels with multiple patterns cannot declare variables

我可以理解这些错误,不需要解释,但是,在没有声明每一个案例的情况下,是否有任何体面/干净的方法来实现这一点?,任何工作环境?

0 个答案:

没有答案