sSm*_*cKk 1 if-statement return go
我在从golang的if语句中返回函数的预期return语句时遇到麻烦。
我提供了以下代码:
package main
import (
"fmt"
)
func random() string {
var x = "return"
if x == "return" {
return x
}
}
func main() {
fmt.Println(random())
}
Run Code Online (Sandbox Code Playgroud)
我的主要功能不应该打印出随机函数返回的字符串值吗?
go.go:13: missing return at end of function
Run Code Online (Sandbox Code Playgroud)
有人知道如何实现这一目标吗?
在 Go 1.1 中,你不需要一直在函数末尾添加 return,但是你需要一个Termination statement,这段代码应该可以工作:http : //play.golang.org/p/fNiijqNHbt
func random() string {
var x = "return"
if x == "return" {
return x
} else {
return "else"
}
}
func main() {
fmt.Println(random())
}
Run Code Online (Sandbox Code Playgroud)
有关更多信息,请参阅:
return即使函数从未返回值,您也必须在末尾添加一个:
http://play.golang.org/p/XFsPL2G15R
func random() string {
var x = "return"
if x == "return" {
return x
}
return ""
}
func main() {
fmt.Println(random())
}
Run Code Online (Sandbox Code Playgroud)