func testMatrix(res *[][]int) {
r := *res
r = append(r, []int{1, 2, 3})
}
fun main(){
res := make([][]int, 0)
testMatrix(&res)
fmt.Println(res)
}
这个 res 为啥是空的 []
1
Mitt 2022 年 12 月 9 日
因为 append 会生成新的 slice
|
2
Mitt 2022 年 12 月 9 日
正确的做法是 *res = append(*res, []int{1, 2, 3})
|
4
lazydog 2022 年 12 月 9 日
你可以打印下地址看看,就知道结果了。
|