【发布时间】:2019-07-31 02:08:54
【问题描述】:
这只是引起了我的好奇心。
虽然我们知道在 C/C++ 中返回在函数中声明的局部非指针类型变量是非法的,但在 Golang 中这是完全合法的。为什么呢?编译器是否根据变量的使用情况来决定是否在编译时将变量分配给栈/堆?
例如
func getVal() *int {
x := 1
return &x
}
【问题讨论】:
-
我不确定你在问什么 - 为什么有可能或如何?
-
@LukeJoshuaPark,实际上都是
标签: go