我对变量感到困惑。情况1:package mainvar a = "F"func main() { n() m() n()}func n() { print(a)}func m() { a = "O" print(a)}结果 = FOO但是当我改变a = "O"(var a = "O"或a := "O")结果是FOF。
1 回答
慕容森
TA贡献1853条经验 获得超18个赞
var a = "O"并且a := "O"都声明了新变量。这意味着a内部变量与全局变量m不同a,因此将其设置为O不会更改全局变量的值。
如果它们在不同的范围内,您可以像这样隐藏变量,在这种情况下就是这样。
一个在全局范围内,一个在m函数范围内。
- 1 回答
- 0 关注
- 201 浏览
添加回答
举报
0/150
提交
取消
