我创建了一个协议:
public protocol MyProtocol { func doTask() }
var taskList: [MyProtocol] = []
调用者可以向taskList添加元素,最终,我得到了一个非空的taskList.
现在,我需要一个可以从taskList中删除元素的函数,这是我尝试过的:
func removeTask(task: MyProtocol) { // Compiler error: Binary operator '!==' cannot be applied to two 'MyProtocol' taskList = taskList.filter{$0 !== task} }
但我收到编译器错误:二进制运算符’!==’无法应用于两个’MyProtocol’
如何摆脱这个错误?
===更新===
感谢@holex,将MyProtocol改为仅限类,它运行正常.但现在我想知道我是否需要MyProtocol不仅仅是类,那么解决方案是什么呢?
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。