在Golang中,我应该将哪种类型用于仅方法类型?

时间:2015-05-12 14:16:30

标签: oop go

我的意思是像这样的方法类型

var Util util
type util struct { }
func (util)Help(v VM) {}
func (util)HelpMe(v VM) {}
func (util)HelpYou(v VM) {}
func (util)HelpEveryOne(v VM) {}

我在binary.BigEndian

中看到了这一点
// LittleEndian is the little-endian implementation of ByteOrder.
var LittleEndian littleEndian

// BigEndian is the big-endian implementation of ByteOrder.
var BigEndian bigEndian

type littleEndian struct{}

这是对方法进行分组的一种非常棘手的方法。所以问题是:为什么struct{}?为什么不只是int别名,是否有理由选择struct{}而不是其他类型?

1 个答案:

答案 0 :(得分:5)

我认为struct {}int之间的主要区别在于struct {}不占用内存,而未使用的int会浪费4或8个字节。