Golang可以说是少有支持多返回值的静态编程语言,并且可以给返回值命名,这在有的时候非常好用;

先来看一个函数:

func SignUp(username string,password string) (int, bool) {
	
}

假设 SignUp 的作用是用来注册用户,返回一个整形和一个布尔值,当注册成功时bool值为true,整形为用户ID;


	userID,successed := SignUp("laowang","123456")

	if successed{
		println("注册成功,用户ID为:",userID)
	}else{
		println("注册失败")
	}

你还可以为返回值给定一个名称,这样会有更好的阅读体验:

func SignUp(username string,password string) (userID int, successed bool) {

}

你可以使用常规的方法返回值:

return 1,true

也可以使用赋值的方法返回:

	userID = 1
	successed = true
	return