条件文での関数の呼び出し
Go で条件文で関数の値を評価する場合、関数を呼び出す適切な方法は次のように宣言することです。関数の戻り値。次のコードを考えてみましょう:
package main import "fmt" func main() { if sumThis(1, 2) > sumThis(3, 4) { fmt.Println("test") } else { fmt.Println("derp") } } func sumThis(a, b int) { // NOTE: Missing return value return a + b }
このコードを実行すると次のエラーが発生します:
./test4.go:4: sumThis(1, 2) used as value ./test4.go:4: sumThis(3, 4) used as value ./test4.go:11: too many arguments to return
この問題は、sumThis 関数に戻り値の宣言が欠落しているために発生します。これを修正するには、関数の戻り値の型を指定する必要があります。この場合は整数 (int) です。
func sumThis(a, b int) int { return a + b }
この変更により、関数の戻り値が宣言され、条件文で次のことが可能になります。 sumThis 関数によって返される値を適切に評価します。
以上がGo の条件文で関数を正しく呼び出すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。