Najlepszy samouczek Idź język zmiennej scoping W 2024 r. W tym samouczku możesz dowiedzieć się zmienne lokalne,Zmienne globalne,parametry formalne,Inicjalizacja zmiennych lokalnych i globalnych,
Twierdził stałą identyfikator zakres reprezentowany przez typ zmiennej,, funkcja lub zakresu pakietu w kodzie źródłowym.
Zmienne języka Przejdź mogą być zadeklarowane w trzech miejscach:
Pozwól nam zrozumieć specyficzne lokalne zmienne, zmienne globalne i parametry formalne.
Zwane zmienne lokalne w deklaracji zmiennej ciała funkcji, ich jedyną funkcją w zakresie vivo, parametry i zwracane wartości zmiennych są zmienne lokalne.
Funkcja Poniższy przykład main () używa lokalnych zmiennych a, b, c:
package main import "fmt" func main() { /* 声明局部变量 */ var a, b, c int /* 初始化参数 */ a = 10 b = 20 c = a + b fmt.Printf ("结果: a = %d, b = %d and c = %d\n", a, b, c) }
Przykłady realizacji powyższego przykładu jest:
结果: a = 10, b = 20 and c = 30
Wywoływana zmienne globalne w deklaracji zmiennej funkcji in vitro, zmienne globalne mogą (po wywożone) wykorzystując cały pakiet nawet opakowanie zewnętrzne.
Zmienne globalne mogą być używane w dowolnej funkcji, Poniższy przykład pokazuje, jak używać zmiennych globalnych:
package main import "fmt" /* 声明全局变量 */ var g int func main() { /* 声明局部变量 */ var a, b int /* 初始化参数 */ a = 10 b = 20 g = a + b fmt.Printf("结果: a = %d, b = %d and g = %d\n", a, b, g) }
Przykłady realizacji powyższego przykładu jest:
结果: a = 10, b = 20 and g = 30
Idź programu językowego w zmiennych globalnych i lokalnych zmiennych może być taka sama nazwa, ale zmienne lokalne wewnątrz funkcji będą traktowane priorytetowo. Przykłady są następujące:
package main import "fmt" /* 声明全局变量 */ var g int = 20 func main() { /* 声明局部变量 */ var g int = 10 fmt.Printf ("结果: g = %d\n", g) }
Przykłady realizacji powyższego przykładu jest:
结果: g = 10
Parametr postaci w zależności od lokalnych zmiennych stosowanych. Przykłady są następujące:
package main import "fmt" /* 声明全局变量 */ var a int = 20; func main() { /* main 函数中声明局部变量 */ var a int = 10 var b int = 20 var c int = 0 fmt.Printf("main()函数中 a = %d\n", a); c = sum( a, b); fmt.Printf("main()函数中 c = %d\n", c); } /* 函数定义-两数相加 */ func sum(a, b int) int { fmt.Printf("sum() 函数中 a = %d\n", a); fmt.Printf("sum() 函数中 b = %d\n", b); return a + b; }
Przykłady realizacji powyższego przykładu jest:
main()函数中 a = 10 sum() 函数中 a = 10 sum() 函数中 b = 20 main()函数中 c = 30
Lokalne i globalne zmienne różnych typów domyślnych:
Typy danych | Domyślnie inicjalizacji |
---|---|
int | 0 |
float32 | 0 |
wskaźnik | zero |