seetter connotter指定readonly属性升级到swift2.0

时间:2015-09-30 08:25:45

标签: ios swift ios9 xcode7

将项目代码升级到swift 2.0时遇到警告。

public class Extension : NSObject {
  private(set) public var name : String = ""
}

上面的代码会提示警告:不能为readonly属性指定setter。 目前,如何更新这些代码以适应swift2.0

1 个答案:

答案 0 :(得分:0)

"The Swift Programming Language (Swift 2.1): Access Control"写道:

  

您可以通过组合公共和私有(设置)访问级别修饰符来使属性getter公开,并将其属性setter设为私有:

因此,这是合法的:

public class Extension : NSObject {
    public private(set) var name : String = ""
}

PS:顺便说一句,它也适用于Swift 2.0。