2015-05-12 61 views
1

我的意思是在binary.BigEndian在Golang中,我應該使用哪種類型的方法專用類型?

// 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{} 

這這樣

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) {} 

我看到這是一個唯一的方法類型是一個非常棘手的方式將你的方法。所以問題是:爲什麼struct{}?爲什麼不只是一個int別名,是否有任何理由選擇struct{}而不是其他類型?

回答

6

相信struct {}int之間的主要區別是,struct {}不佔用存儲器而一個未使用的int會浪費4或8個字節。

+3

是的。見http://dave.cheney.net/2014/03/25/the-empty-struct – lnmx

相關問題