我有一个类,它接受一堆项目并将它们存储在字典中。初始化程序接受任何SequenceType
并将其中的每个元素放入字典中:
class MyClass<T : Hashable> {
private var set = [T : Bool]()
init<S : SequenceType where S.Generator.Element == T>(_ elements: S) {
for a in elements { // elements: Cannot convert the expression's type 'S' to to type 'S'
set[a] = true
}
}
}
这不编译并给出上面的错误。错误出现在elements
,并没有任何意义。我还尝试了使用Array
的{{1}} extends
方法,但这不起作用(因为它不应该),但Array似乎可以使其正常工作。