@KirSupi

Как реализовать сравнение кастомных типов в Go?

Например, в Python, чтобы сравнивать два объекта класса через == или >, достаточно этому классу задать методы __eq__(self, other) (equals), __gt__(self, other) (greater)
Есть ли что-то подобное в Go, или придётся делать a.Greater(b)?
  • Вопрос задан
  • 249 просмотров
Пригласить эксперта
Ответы на вопрос 2
vabka
@vabka
Токсичный шарпист
В го нет возможности переопределения стандартных операторов или определениях их для собственных типов.
Так что да
придётся делать a.Greater(b)
Ответ написан
Комментировать
uvelichitel
@uvelichitel Куратор тега Go
habrahabr.ru/users/uvelichitel
Есть ещё reflect.deepequal чтобы самому руками интерфейс не реализовывать.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы