go|go 递归

【go|go 递归】指针的指针就是实际的值
形参指针传递使用值的地址传递
代码实现
func main() { var man []*Man //声明指针切片 RecursionMan(&man) //地址传递 for key, item := range man { //打印数据 fmt.Printf("%d号男人,年龄:%d, 身高:%d\n", key+1, item.Age, item.Height) } } //定义结构体 type Man struct { Age int Height int } //定义递归次数 var count = 0 //实现递归 func RecursionMan(man *[]*Man) { count ++ *man = append(*man, &Man{ //指针的指针就是实际的值 Age: 20 + count, Height:170 + count, }) if count < 10 { RecursionMan(man) return } return }

结果打印 go|go 递归
文章图片
图片.png

    推荐阅读