如何使用Array.filter解决编译错误?

时间:2015-07-03 09:13:33

标签: swift

我试图从数组中删除一个对象而我正在使用过滤器功能:

protocol OnLogListener {
    func onLog(log: Log)
}

class Logger {

    static private var listeners = [OnLogListener]()

    static func removeOnLogListener(listener: OnLogListener) {
        listeners = listeners.filter({ $0 !== listener })
    }

}

编译器抱怨以下错误:

Cannot invoke 'filter' with an argument list of type '((_) -> _)'

我不理解错误,闭包返回一个布尔值,并使用OnLogListener参数,它是一个(OnLogListener) -> Boolean闭包。

0 个答案:

没有答案