这里有一个struct,当Xcode试图编译它时,它会生成错误
public struct GATToIPPermissions : OptionSet {
public init(rawValue: UInt)
public static var read: GATToIPPermissions { get {}}
public static var write: GATToIPPermissions { get {}}
public static var event: GATToIPPermissions { get {}}
public static var all: GATToIPPermissions { get {}}
}我得到的错误是Type GATToIPPermissions does not conform to protocol RawRepresentable。然而,我没有得到任何关于为什么它不符合的迹象。
你们有谁能发现问题所在吗?
发布于 2017-08-05 00:54:38
您编写的语法就是您在protocol中使用的语法。如果是在协议中,它会声明“符合条件的类型必须实现一个名为init(rawValue:)的初始化器,并具有GATToIPPermissions类型的以下属性的getter:read、write、event和all”。
但是您的目标不是在protocol中编写声明,而是希望在struct中编写实现,如下所示:
public struct GATToIPPermissions : OptionSet {
public init(rawValue: UInt) {
//initialize self with `rawValue`
}
public static let read = GATToIPPermissions() //set me to the right value
public static let write = GATToIPPermissions() //set me to the right value
public static let event = GATToIPPermissions() //set me to the right value
public static let all = GATToIPPermissions() //set me to the right value
}https://stackoverflow.com/questions/45511813
复制相似问题