Tutorial Bahasa pergi variabel scoping Terbaik Pada tahun 2024, Dalam tutorial ini Anda dapat mempelajari variabel lokal,Variabel global,parameter formal,Menginisialisasi variabel lokal dan global,
Diklaim lingkup identifier konstan diwakili oleh jenis, variabel, fungsi, atau ruang lingkup paket dalam kode sumber.
variabel bahasa Go dapat dinyatakan di tiga tempat:
Mari kita memahami variabel lokal yang spesifik, variabel global dan parameter formal.
Disebut variabel lokal dalam deklarasi variabel fungsi tubuh, mereka hanya berfungsi dalam lingkup vivo, parameter dan mengembalikan nilai-nilai variabel adalah variabel lokal.
Contoh berikut main () fungsi menggunakan variabel lokal 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) }
Contoh pelaksanaan output di atas adalah:
结果: a = 10, b = 20 and c = 30
Disebut variabel global dalam deklarasi variabel fungsi in vitro, variabel global dapat (setelah diekspor) menggunakan seluruh paket bahkan paket eksternal.
variabel global dapat digunakan dalam setiap fungsi, contoh berikut menunjukkan bagaimana menggunakan variabel global:
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) }
Contoh pelaksanaan output di atas adalah:
结果: a = 10, b = 20 and g = 30
Pergi bahasa program dalam variabel global dan variabel lokal dapat menjadi nama yang sama, tetapi variabel lokal dalam fungsi akan diberikan prioritas. Contohnya adalah sebagai berikut:
package main import "fmt" /* 声明全局变量 */ var g int = 20 func main() { /* 声明局部变量 */ var g int = 10 fmt.Printf ("结果: g = %d\n", g) }
Contoh pelaksanaan output di atas adalah:
结果: g = 10
parameter bentuk sebagai fungsi dari variabel lokal yang digunakan. Contohnya adalah sebagai berikut:
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; }
Contoh pelaksanaan output di atas adalah:
main()函数中 a = 10 sum() 函数中 a = 10 sum() 函数中 b = 20 main()函数中 c = 30
variabel lokal dan global dari berbagai jenis default:
Jenis Data | inisialisasi default |
---|---|
int | 0 |
float32 | 0 |
petunjuk | nol |