Vai lingua scoping variabile
Sostenuto identificatore portata costante rappresentato dal tipo, variabile, funzione, o la portata del pacchetto nel codice sorgente.
variabili del linguaggio Go possono essere dichiarate in tre punti:
- Le variabili definite all'interno di una funzione chiamata variabili locali
- Variabile al di fuori della definizione di funzione viene chiamata una variabile globale
- parametri formali variabili definizione della funzione chiamata
Cerchiamo di capire le variabili locali specifici, variabili globali e parametri formali.
Le variabili locali
valori denominate variabili locali nella dichiarazione delle variabili del corpo della funzione, hanno solo la funzione di portata vivo, parametri e ritorno di variabili sono variabili locali.
La funzione seguente esempio main () utilizza variabili locali 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) }
Esempi di attuazione dell'uscita sopra è:
结果: a = 10, b = 20 and c = 30
Variabili globali
Chiamato variabili globali nella dichiarazione delle variabili della funzione in vitro, le variabili globali può (dopo essere stato esportato) utilizzando l'intero pacchetto, anche il pacchetto esterni.
Le variabili globali possono essere utilizzati in qualsiasi funzione, l'esempio seguente mostra come utilizzare le variabili globali:
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) }
Esempi di attuazione dell'uscita sopra è:
结果: a = 10, b = 20 and g = 30
Andare programma di lingua in variabili globali e le variabili locali possono essere lo stesso nome, ma le variabili locali all'interno della funzione sarà data la priorità. Esempi sono i seguenti:
package main import "fmt" /* 声明全局变量 */ var g int = 20 func main() { /* 声明局部变量 */ var g int = 10 fmt.Printf ("结果: g = %d\n", g) }
Esempi di attuazione dell'uscita sopra è:
结果: g = 10
parametri formali
parametro di modulo in funzione di variabili locali usate. Esempi sono i seguenti:
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; }
Esempi di attuazione dell'uscita sopra è:
main()函数中 a = 10 sum() 函数中 a = 10 sum() 函数中 b = 20 main()函数中 c = 30
Inizializzare le variabili locali e globali
Le variabili locali e globali dei diversi tipi di default:
Tipi di dati | inizializzazione di default |
---|---|
int | 0 |
float32 | 0 |
pointer | zero |