[[1,2,3],[2,4,5]]
我想要这样的结果,所以把temp push到了结果数组res中,结果发现,虽然放进去了,但是后面temp执行pop操作以后,原先res中的数组也执行了pop,我感觉应该是因为push的内存地址的原因,但是不知道怎么改才能不影响原来push进去的res呢?
[[1,2,3],[2,4,5]]
我想要这样的结果,所以把temp push到了结果数组res中,结果发现,虽然放进去了,但是后面temp执行pop操作以后,原先res中的数组也执行了pop,我感觉应该是因为push的内存地址的原因,但是不知道怎么改才能不影响原来push进去的res呢?
10 回答11.6k 阅读
2 回答3.1k 阅读✓ 已解决
3 回答2.6k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
2 回答2.1k 阅读✓ 已解决
4 回答2.1k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
确实是内存的原因,
push
只是在res
的尾部新增一个对temp
的引用,这个引用指向的内存还是temp
原来的内存地址。可以新建一个数组并
push
到里面去: