Rumah >pembangunan bahagian belakang >Golang >Bagaimanakah Saya Boleh Mengakses Pembolehubah yang Diisytiharkan Di Dalam Pernyataan Go `if` Di Luarnya?
Dalam Go, pembolehubah yang diisytiharkan dalam skop pernyataan if hanya boleh dilihat dalam blok tersebut. Ini boleh menimbulkan cabaran apabila perlu menggunakan pembolehubah yang diisytiharkan dalam pernyataan bersyarat di luarnya.
Pertimbangkan kod berikut:
if len(array1) > len(array2) { new1 := make([]string, 0, len(array1)) } // Error: new1 is not visible here new2 := make([]string, 0, len(new1))
Dalam contoh ini, pembolehubah new1 diisytiharkan dalam pernyataan if dan hanya boleh digunakan dalam skop tersebut. Untuk menyelesaikan isu ini, new1 mesti diisytiharkan di luar pernyataan if dan dimulakan di dalamnya.
var new1 []string if len(array1) > len(array2) { new1 = make([]string, 0, len(array1)) } else { new1 = make([]string, 0, len(array2)) } new2 := make([]string, 0, len(new1))
Kini, new1 diisytiharkan di luar pernyataan if dan boleh diakses dalam kedua-dua blok if dan else. Ini membolehkan ia digunakan dalam kod seterusnya yang dihantar sebagai hujah untuk dibuat.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengakses Pembolehubah yang Diisytiharkan Di Dalam Pernyataan Go `if` Di Luarnya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!