函数调用中的“用作值”
在Go中,可以调用函数来计算其值,可以在条件中使用声明。然而,在计算函数值时,确保正确的函数声明和调用至关重要。
在提供的代码片段中:
if sumThis(1,2) > sumThis(3,4){ fmt.Println("test") } else { fmt.Println("derp") }
函数 sumThis 被多次调用以计算其值。但是,错误消息表明 sumThis 被“用作值”,这意味着函数调用正在尝试将函数调用的结果分配给变量而不指定返回类型。
要解决此问题,您需要为 sumThis 函数声明一个返回类型。在 Go 中,函数必须显式声明其返回类型。该函数应声明如下:
func sumThis(a, b int) int { return a + b }
通过指定返回类型为 int,函数将返回计算结果。现在,代码将成功编译并运行,根据函数调用的结果打印“test”或“derp”。
以上是为什么我的 Go 函数调用会导致'用作值”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!