我對變量感到困惑。情況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 關注
- 188 瀏覽
添加回答
舉報
0/150
提交
取消