Go では、関数を呼び出すときに名前付きパラメーターを指定することはできません。代わりに、引数は予想される順序でリストする必要があります。ただし、フィールド名を使用して初期化を行う方法は 2 つあります。
最も直接的な方法は、関数のパラメーターを含む構造体を定義し、その構造体のインスタンスを関数に渡すことです。関数:
type Params struct { Name string Address string Nick string Age int Value int } func MyFunction(p Params) { // Operations using p.Name, p.Address, etc. } func main() { MyFunction(Params{ Name: "Bob", Address: "New York", Nick: "Builder", Age: 30, Value: 1000, }) }
変更する場合元の関数が実行できない場合は、構造体を受け入れ、適切なフィールド値を元の関数に転送するヘルパー関数を作成できます。
func MyFunction(name, address, nick string, age, value int) { // Operations using name, address, etc. } func MyFunction2(p Params) { MyFunction(p.Name, p.Address, p.Nick, p.Age, p.Value) } func main() { MyFunction2(Params{ Name: "Bob", Address: "New York", Nick: "Builder", Age: 30, Value: 1000, }) }
どちらの方法でも、フィールド名を使用して関数パラメータを初期化できます。柔軟性とコードの可読性の向上。
以上がフィールド名を使用して Go 関数のパラメーターを初期化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。