はい、Go 言語の匿名関数は複数の値を返すことができます。構文: func(arg1, arg2, ..., argN) (ret1, ret2, ..., retM) { // 関数本体 }。使用法: := 演算子を使用して戻り値を受け取り、return キーワードを使用して複数の値を返します。
短い答え:
はい、Go 言語の匿名関数は複数の値を返すことができます。
構文:
func(arg1, arg2, ..., argN) (ret1, ret2, ..., retM) { // 函数体 }
その中に:
arg1
、arg2
、. . ., argN
は、無名関数のパラメータ リストです。 ret1
, ret2
, ..., retMM
は、無名関数の戻り値リストです。 使用法:
:=
演算子を使用します: values := func(x, y int) (int, int) { return x + y, x - y }(10, 5)
上記のコードでは、匿名関数は 2 つの整数パラメーター x
と y
を受け取り、それらの合計と差を返します。 :=
演算子は、無名関数の戻り値を values
変数に 1 つずつ割り当てます。
return
キーワードを使用します: func(x int) (int, int) { return x + 1, x - 1 }
実際のケース:
次のコードを考えてみましょう:
func main() { // 定义一个接收整数并返回其加法和减法结果的匿名函数 addSub := func(x int) (int, int) { return x + 1, x - 1 } // 调用匿名函数并分别将加法和减法结果存储在变量中 sum, diff := addSub(10) fmt.Println("Add:", sum) fmt.Println("Sub:", diff) }
出力:
Add: 11 Sub: 9
以上がGolang の匿名関数は複数の値を返すことができますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。