基本的に、aのフィールドの値を反復処理する(私が知っている)唯一の方法struct
は次のとおりです。
type Example struct {
a_number uint32
a_string string
}
//...
r := &Example{(2 << 31) - 1, "...."}:
for _, d:= range []interface{}{ r.a_number, r.a_string, } {
//do something with the d
}
を達成[]interface{}{ r.a_number, r.a_string, }
するためのより優れた、より用途の広い方法があるかどうか疑問に思っていたので、各パラメーターを個別にリストする必要はありませんか、あるいは、構造体をループするより良い方法はありますか?
reflect
パッケージを調べてみましたが、取り出しreflect.ValueOf(*r).Field(0)
た後どうすればよいかわからないため、壁にぶち当たりました。
ありがとう!