Невозможно ли в Swift сравнить идентификацию объекта с типом протокола? Я пытаюсь найти встроенный способ сделать это. Это мой пример:Идентификация объекта и протоколы
protocol MyProtocol {
var propertyFoo: Int { get set }
}
class MyProtocolImpl: MyProtocol {
var propertyFoo = 100
func test(arg: MyProtocol) {
if arg === self { // error
print("Same object")
} else {
print("Different object")
}
}
}
Я получаю следующее сообщение об ошибке:
Бинарный оператор '===' не может быть применен к операндам типа 'MyProtocol' и 'MyProtocolImpl'
Похоже, он должен быть опущенными с: ', если аргумент является MyProtocolImpl && АРГ! MyProtocolImpl === self' –
Да, вы правы)) – Avt