3

Go 中是否有任何内部机制来实现相等和排序?(所以我们可以在类型上使用比较运算符 - ==、!=、<、>、<=、>=。)

注意:我看到一些类型有一个名为 Less 的方法,它似乎用于排序。但是我找不到那个或相等检查接口的文档(如果有的话)。

4

1 回答 1

7

Go不支持运算符重载,因此您将无法使用您的类型覆盖这些运算符的行为。如果您需要在您的类型上使用这些操作,则将它们定义为方法。

您可能在某些类型上看到的Less方法可能作为sort.Interface接口的一部分存在,或者可能heap.Interface(它扩展了排序接口)。

于 2013-03-20T10:21:20.337 回答