0
在我目前的執行情況,我傳遞一個字符串枚舉使用rawValue
這樣的功能:什麼類型是一個字符串枚舉因此它可以作爲一個參數?
enum Compass: String {
case North, South, East, West
}
func something(key: String) {...}
something(Compass.East.rawValue)
難道還有比String
的功能之外的不同類型的,所以我可以做這樣的事情?
something(Compass.East)
我不想讓Compass
類型的key
參數,因爲我有enums
從不同的地方來,但所有來自String
繼承。
我試着這樣做,卻得到了一個錯誤:
FUNC東西(重點:StringLiteralConvertible){...} // 錯誤:協議 'StringLiteralConvertible' 只能作爲一種通用的約束
有沒有我可以使用的類型,所以我不必每次都使用rawValue
。