golang命名返回值函数与未命名返回值函数介绍

golang命名返回值函数与未命名返回值函数介绍

1、golang函数返回值可在定义时给出变量名称

//未命名返回值函数
func test1(num int) int {
	return num + 1
}
//命名返回值函数
func test2(num int) (res int) {
	res = num + 1
	return res
}

2、命名返回值函数在return时,可不写返回变量名

//命名返回值函数
func test2(num int) (res int) {
	res = num + 1
	return //可不写返回变量名,但return是必须的
}

3、命名返回值函数在return时,可重新指定返回值

func test2(num int) (res int) {
	res = num + 1
	return //可不写返回变量名,但return是必须的
}
func test3(num int) (res int) {
	res = num + 1
	return num//重新指定返回值
}
func main() {
	fmt.Println("输出结果是:", test2(1))
	fmt.Println("输出结果是:", test3(1))
}
输出结果是: 2
输出结果是: 1

4、当存在多个返回值时,多个返回值需要同时命名或同时未命名

golang支持多返回值函数,当存在多个返回值时,不可命名返回值与未命名返回值混用,否则编译报错。

func test4(num int)(res1 int,int){
	return num,num+1
}
.\main.go:23:20: syntax error: mixed named and unnamed function parameters
混合命名和未命名函数参数

(^ _ ^)/ 如有错误,欢迎指正修改!

你可能感兴趣的:(golang)