2015-08-17 28 views
0

我是新來的這個語言,到目前爲止我讀到的並不能解釋這裏發生了什麼。我正在看JSON decoding你可以解釋func關鍵字和函數名稱之間的參數嗎?

這裏是一個包中的函數:

func (dec *Decoder) Decode(v interface{}) error 

這裏有類似的表示法:

func (dec *Decoder) Buffered() io.Reader 

如何將這些功能訪問(dec *Decoder)?鑑於第二個函數沒有參數,我猜這不是必須直接在函數調用中傳遞,而是類似的東西?

回答

4

這兩個函數是methods,因爲它們與接收器關聯。在每個方法聲明中,(dec *Decoder)描述了接收器。如果你有一個叫*Decoderdecoder,你調用它的Buffered這樣的:

reader := decoder.Buffered() 

就以這個主題來看看the Go tutorial lesson

相關問題