对Golang函数的返回值参数进行命名
对Golang函数的返回值参数进行命名,相当于在函数的内部首先就定义了变量作为返回值,并将其初始化为零值。
package main import ( "fmt" ) func main() { fmt.Println("goooooo") nums := []int{9, 8, 5, 6, 1, 7, 3} max_v, min_v, msg := MaxMin(nums) fmt.Printf("min=%d,max=%d,msg=%s", min_v, max_v, msg) } //以下函数的返回值已经命名,相当于在函数的内部首先就定义了2个变量作为返回值,且其初始化为零值。 func MaxMin([]int) (max_val int, min_val int, msg string) { // max_val = nums[0] //min_val = nums[0] //若不加这行,函数最后的返回的min_val为0,因为其默认初始化为零值。 for _, v := range nums { if max_val < v { max_val = v } if min_val > v { min_val = v } } return max_val, min_val, msg //msg未赋值过,默认为零值,即为空 } //输出为: //min=0,max=9,msg= //此处min=0,因为其作为MaxMin函数的已命名返回值参数,被默认初始化为零值,且其为int型,对应的零值即为0,且在由于nums最小的元素为1,min_val未被改变过值,因此函数返回的min_val为0。
参考:https://blog.csdn.net/weixin_37825371/article/details/103985592