完全没有对内容的复制。
倒是指针被复制了一份。
【 在 BAIYUXIONG 的大作中提到: 】
: 标 题: 请教关于堆栈的理解是否正确
: 发信站: 水木社区 (Sat May 27 13:29:50 2023), 站内
:
: package main
:
: import "time"
:
: type Person struct {
: }
:
: // M 全局变量 放在堆上
: var M map[string]*Person
:
: func main() {
: go CreatePerson()
: time.Sleep(time.Second * 5)
: }
:
: func CreatePerson() {
: // 下面这句,变量p 放在协程的栈上
: p := &Person{}
: // 执行下面这句,p会被复制到堆上吗?复制后,原来栈上的p变量在函数结束会被回收?
: M["key"] = p
: }
:
: 请教,上面的注释理解正确吗?
:
: --
:
: ※ 来源:·水木社区 mysmth.net·[FROM: 219.145.4.*]
--
FROM 124.126.149.*