-4
我的枚舉有一點問題。我試圖聲明如下:布爾值對的枚舉
enum Test : (Bool, Bool) {
case Both = (true, true)
case None = (false, false)
}
我得到這個錯誤:
聲明不能以封閉的表達開始
支護語句塊是未使用的封閉
類型名稱的預期標識符
預期 '(' 枚舉
感謝您的幫助:)
我的枚舉有一點問題。我試圖聲明如下:布爾值對的枚舉
enum Test : (Bool, Bool) {
case Both = (true, true)
case None = (false, false)
}
我得到這個錯誤:
聲明不能以封閉的表達開始
支護語句塊是未使用的封閉
類型名稱的預期標識符
預期 '(' 枚舉
感謝您的幫助:)
我認爲你將與OptionSetType
更好:
struct MyOptions : OptionSetType {
let rawValue: Int
init(rawValue: Int) { self.rawValue = rawValue }
static let FirstOption = MyOptions(rawValue: 1)
static let SecondOption = MyOptions(rawValue: 2)
static let ThirdOption = MyOptions(rawValue: 4)
}
let opt1: MyOptions = []
let opt2: MyOptions = [.FirstOption, .ThirdOption]
opt1
擁有所有標誌關閉。 opt2
已打開第一個和第三個標誌。您可以測試一個標誌是由:
if opt2.contains(.FirstOption) {
// true
}
「這是錯誤的」 - 解釋如何這是錯的 - 它創建一個錯誤,它不會產生你所期望的結果,等 –
講述的是Objective-這個問題C還是Swift? – JAL
這是關於swift的 – jsn