Задать вопрос
@KirSupi

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

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

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

Похожие вопросы