我试图从数组中删除一个对象而我正在使用过滤器功能:
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
闭包。