2014-10-06 90 views
0

我有一個協議:如何強制子/協議

protocol CXSummarizable:Hashable,Equatable{ 
    func summary() -> (title:String,subTitle:String,icon:CXImage,identifier:CXIdentifier); 
} 

我想使所有遵循此協議陣列的字典。

Dictionary<CXSummarizeable,Array<CXSummarizeable>>

有一些特殊的語法來做到這一點?

回答

1

我想製作一個所有遵循此協議的數組字典。

你可以這樣做。

var result: [CXSummarizeable:[CXSummarizeable]] = [:]; 
//   ^key type ^value type  ^empty dictionary    

您定義詞典的類型爲具有CXSummarizeable型的按鍵和[CXSummarizeable]類型的值的字典。然後爲該變量分配一個空字典文字[:]

然後您可以開始插入數據。