在 Golang 中,如果一个函数声明了返回值类型,那么在函数体内必须包含至少一个 return 语句。否则,在编译时会出现 “missing return at end of function” 的错误提示。
例如,下面的示例代码就会出现这个错误:
func add(a, b int) int {
if a < 0 || b < 0 {
fmt.Println("a and b must be positive")
} else {
return a + b
}
}
因为在条件语句中没有对于非法参数的处理方式,并且缺少了返回语句。解决这个问题的方法是在条件语句的外层增加一条默认的返回语句或者特定的错误处理逻辑。
以下是修改后的示例代码:
func add(a, b int) int {
if a < 0 || b < 0 {
panic("a and b must be positive")
}
return a + b
}
这样可以保证即使输入非法参数时程序也能正确地结束并给出明确的提示信息。




