2015-10-13 61 views
1

我有以下声明:如何在Swift中添加多个泛型类型约束?

TableViewDataSource 
    <Model: ManagedObject, Cell: UITableViewCell where Cell: ConfigurableCell> : 
     NSObject, UITableViewDataSource 

我想提出一个约束模型类型。这样的事情:

TableViewDataSource 
    <Model: ManagedObject where Model: ManagedObjectType, 
    Cell: UITableViewCell where Cell: ConfigurableCell> : 
     NSObject, UITableViewDataSource 

我怎么能在Swift 2.0中做到这一点?

+0

什么具体不工作? – Mundi

+0

查看下面的答案!! –

回答

1

把它像这样代替,

TableViewDataSource 
    <Model:ManagedObject, Cell: UITableViewCell 
    where Model:ManagedObjectType, Cell:ConfigurableCell>: 
     NSObject,UITableViewDataSource 

所有的通用类型应该首先要声明的分隔符(逗号)分离,然后限制,应在稍后提供,每个约束也应该与逗号分隔。所有的约束条件必须满足才能使其工作。