Swift Generic Sequence - 无法将表达式的类型'S'转换为'S'类型

时间:2014-11-29 20:55:39

标签: swift

我有一个类,它接受一堆项目并将它们存储在字典中。初始化程序接受任何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似乎可以使其正常工作。

0 个答案:

没有答案