struct TimeMark: OptionSetType {
private enum TimeMark : Int,CustomStringConvertible {
case Header=0, Current=1
var description : String {
var shift = 0
while (rawValue >> shift != 1){ shift += 1 }
return ["Header", "Current"][shift]
}
}
let rawValue: Int
internal init(rawValue: Int) {
self.rawValue = rawValue
}
private init(_ timeMark: TimeMark) { self.rawValue = timeMark.rawValue
}
static let Header = 0
static let Current = 1
}
let mark: TimeMark
let rounded: Bool = mark == TimeMark.Current
我收到最后一行的拒绝。
我还将我的比较运算符更改为===(我认为它不会起作用)并且它也不起作用。
答案 0 :(得分:0)
您应该在使用或访问它之前对其进行初始化。试试这个:
let mark = TimeMark()
let rounded = (mark.rawValue == TimeMark.Current)