Variablenbereich innerhalb von If-Anweisungen in Go
Bei der Arbeit mit Go kann es vorkommen, dass Sie eine Variable innerhalb eines If erstellen müssen Anweisung und verwenden Sie sie anschließend außerhalb dieser Anweisung. Go erzwingt jedoch strenge Regeln für den Gültigkeitsbereich von Variablen und verbietet die Erstellung und Verwendung von Variablen über verschiedene Codeblöcke hinweg.
Im bereitgestellten Code stellt die Unfähigkeit, die Variable new1 innerhalb der if-Anweisung zu erstellen, eine Herausforderung dar. Da seine Größe vom Ergebnis der if-Anweisung abhängt, ist es möglicherweise nicht möglich, es außerhalb zu deklarieren.
Um dieses Problem anzugehen, bietet Go eine einfache und effektive Lösung. Sie können die Variable new1 außerhalb der if-Anweisung deklarieren und mit make innerhalb der Anweisung initialisieren. Dadurch können Sie ihre Größe dynamisch bestimmen und nach Abschluss der if-Anweisung verwenden.
Hier ist der geänderte Code:
var new1 []string if len(array1) > len(array2) { new1 = make([]string, 0, len(array1)) // instructions ... } else { new1 = make([]string, 0, len(array2)) // other instructions ... } new2 := make([]string, 0, len(new1)) copy(new2, new1)
Dieser Ansatz bewahrt den Gültigkeitsbereich der Variablen und stellt gleichzeitig sicher, dass er gültig sein kann wird in der gesamten Funktion verwendet, unabhängig vom Ergebnis der if-Anweisung.
Das obige ist der detaillierte Inhalt vonWie kann ich eine innerhalb einer Go-If-Anweisung erstellte Variable außerhalb davon verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!