在此程式碼中:
注意A 沒有實作String()方法,因此fmtfmt .Println(a) 列印其本機表示。為結構體中的每個新欄位更新 String() 可能會很乏味。
不幸的是,這種行為是 fmt 套件固有的。但是,使用反射的輔助函數可以解決此問題:
此函數使用反射來迭代結構體欄位並呼叫其 String() 方法(如果可用)。
用法:
(可選)將String() 方法加入到呼叫的結構中PrintStruct():
現在,帶有String () 的結構體欄位將會自動列印。
註釋:
以上是如何輕鬆列印 Go 結構及其欄位名稱和 String() 方法?的詳細內容。更多資訊請關注PHP中文網其他相關文章!