对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

posted @ 2022-05-10 20:40  morein2008  阅读(113)  评论(0编辑  收藏  举报