首頁 > 後端開發 > Golang > 如何存取 Go if 語句內部宣告的變數?

如何存取 Go if 語句內部宣告的變數?

Mary-Kate Olsen
發布: 2024-11-29 17:31:10
原創
498 人瀏覽過

How Can I Access Variables Declared Inside a Go `if` Statement Outside of It?

條件語句中的變數作用域

在 Go 中,在 if 語句作用域內宣告的變數僅在該區塊內可見。當需要使用條件語句中宣告的變數時,這可能會帶來挑戰。

考慮以下程式碼:

if len(array1) > len(array2) {
    new1 := make([]string, 0, len(array1))
}

// Error: new1 is not visible here
new2 := make([]string, 0, len(new1))
登入後複製

在此範例中,宣告了變數 new1在 if 語句中且只能在該範圍內使用。要解決此問題,必須在 if 語句外部聲明 new1 並在其中初始化。

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))
登入後複製

現在,new1 在 if 語句外部聲明,並且可以在 if 和 else 區塊中存取。這允許它在後續程式碼中使用,並作為參數傳遞給 make。

以上是如何存取 Go if 語句內部宣告的變數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板