2014-10-06 72 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]类型的值的字典。然后为该变量分配一个空字典文字[:]

然后您可以开始插入数据。