Я пытаюсь использовать struct
в качестве ключа в NSDictionary
. Согласно документации, он должен соответствовать протоколу Hashable
.
Я сделал это, но получаю сообщение об ошибке DateRange
не соответствует протоколам Hashable
и Equatable
. Как я могу это исправить?
Вот мой код:Использование структуры в качестве ключа для NSDictionary
struct DateRange: Hashable {
var startDate: NSDate {
return self.startDate.timeIntervalSince1970.hashValue
}
var endDate: NSDate {
return self.endDate.timeIntervalSince1970.hashValue
}
}
Не могли бы вы написать рабочий пример? Я получаю кучу ошибок при реализации функции-компаратора – Oleg
@Oleg см. Обновленный ответ – Antonio
В конце концов, моя проблема заключалась в том, что я объявила структуру внутри класса :) Но ваш ответ работает отлично! – Oleg