go 的形参

注意

记录一个 go 语言编程中,可能不小心忽略的一个点,

  • 当函数的 出参 如果是 数组、结构体、字典 类型时,是不需要声明的,可以直接使用。

  • 但是如果 出参指针 类型,则必须要显示的声明

代码示例

复制type person struct {
	name string
}

func main() {
	r := getList()
	fmt.Println(r)
	m := getMap()
	fmt.Println(m)
	p := getPerson()
	fmt.Println(p)
	// 会报错
	pp := getPointer()
	fmt.Println(pp)
}

func getList() (l []int) {
	for i := 0; i < 10; i++ {
		l = append(l, i)
	}
	return l
}

func getMap() (m map[int]int) {
	for i := 0; i < 5; i++ {
		m[i] = i
	}
	return m
}

func getPerson() (p person) {
	p.name = "张三"
	return p
}
func getPointer() (p *person) {
	p.name = "张三"
	return p
}
posted @   沧海一声笑rush  阅读(56)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示