Heim >Backend-Entwicklung >Golang >Wie greife ich auf Variablen zu, die in einer „if...else'-Anweisung in Go deklariert sind?
Variablenbereich in Go
In Go müssen Variablen innerhalb eines bestimmten Bereichs deklariert werden. Wenn Sie eine Variable innerhalb einer if...else-Anweisung deklarieren, ist ihr Gültigkeitsbereich auf diese Anweisung beschränkt. Dies bedeutet, dass die Variable nicht außerhalb der Anweisung verwendet werden kann.
Bedenken Sie den folgenden Code:
if strings.EqualFold(r.Method, "GET") || strings.EqualFold(r.Method, "") { req, er := http.NewRequest(r.Method, r.Uri, b) } else { req, er := http.NewRequest(r.Method, r.Uri, b) }
In diesem Code werden die Variablen req und er innerhalb des if deklariert... else-Anweisung. Dies bedeutet, dass sie nur innerhalb dieser Anweisung verwendet werden können. Außerhalb der Anweisung sind die Variablen undefiniert.
Um dieses Problem zu lösen, können Sie die Variablen außerhalb der if...else-Anweisung deklarieren, wie unten gezeigt:
var req *http.Request var er error if strings.EqualFold(r.Method, "GET") || strings.EqualFold(r.Method, "") { req, er = http.NewRequest(r.Method, r.Uri, b) } else { req, er = http.NewRequest(r.Method, r.Uri, b) }
Jetzt , die Variablen req und er werden außerhalb der if...else-Anweisung deklariert, sodass sie in der gesamten Funktion verwendet werden können.
Das obige ist der detaillierte Inhalt vonWie greife ich auf Variablen zu, die in einer „if...else'-Anweisung in Go deklariert sind?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!