聽起來很可笑,但我無法修復這段代碼:無論不能援引「過濾器」類型的參數列表「((_) - > _)」
self.runningScripts.filter({ $0 != scriptRunner })
我怎麼寫關閉我總是得到這樣的錯誤:
Cannot invoke 'filter' with an argument list of type '
((_) -> _)
'
runningScripts
這樣定義:
var runningScripts = [ScriptRunner]()
和ScriptRunner
是一個Swift類(不從NSObject繼承)
我在許多其他地方使用幾乎一樣沒有問題。有什麼建議麼?
...或者你可以把它NSObject的子類(符合'Equatable')。那一刻才發現。無論如何,謝謝! (其實我想用'!=='...) – idmean
我會小心使用'NSObject'技術。它使得'=='的行爲更像'===',除非你用更合乎邏輯的東西來重寫'isEqual'(或者自己實現'==',在這種情況下,只需符合'Equatable')就更簡單了。 – Rob
感謝您的警告。我剛剛意識到寫了評論後,這就是爲什麼我添加了「*實際上我想用==!*」 – idmean