Heim > Artikel > Backend-Entwicklung > Was ist const in Golang?
Die const-Deklaration gibt einer Konstante einen Namen, d. h. einen Wert, der zur Kompilierungszeit festgelegt wird. Der Wert einer Konstante muss eine Zahl, eine Zeichenfolge oder ein boolescher Wert sein.
Konstanten in der Go-Sprache werden mit dem Schlüsselwort const definiert und zum Speichern von Daten verwendet, die sich nicht ändern. Konstanten werden zur Kompilierungszeit erstellt, auch wenn sie innerhalb einer Funktion definiert werden, und können nur Seien Sie boolesch, numerisch (Ganzzahl, Gleitkomma und komplex) und eine Zeichenfolge. (Empfohlenes Lernen: go)
Aufgrund von Kompilierungszeitbeschränkungen muss der Ausdruck, der eine Konstante definiert, ein konstanter Ausdruck sein, der vom Compiler ausgewertet werden kann.
Das Definitionsformat von Konstanten ähnelt der Deklarationssyntax von Variablen: const name [type] = value, zum Beispiel:
const pi = 3.14159 // 相当于 math.Pi 的近似值
In der Go-Sprache können Sie den Typ weglassen Bezeichner [Typ], da der Compiler anhand seines Werts auf den Typ einer Variablen schließen kann.
Explizite Typdefinition: const b string = "abc"
Implizite Typdefinition: const b = "abc"
Der Wert einer Konstante muss lesbar sein Zur Kompilierzeit können zwar Berechnungen in ihre Zuweisungsausdrücke einbezogen werden, aber alle für Berechnungen verwendeten Werte müssen zur Kompilierungszeit verfügbar sein.
Richtiger Ansatz:
const c1 = 2/3
Falscher Ansatz:
const c2 = getNumber() // 引发构建错误: getNumber() 用做值
Wie bei der Variablendeklaration können mehrere Konstanten in Stapeln deklariert werden:
const ( e = 2.7182818 pi = 3.1415926 )
Alle Konstantenoperationen können zur Kompilierungszeit abgeschlossen werden, was nicht nur die Laufzeitarbeit reduziert, sondern auch die Kompilierung und Optimierung anderer Codes erleichtert. Wenn der Operand eine Konstante ist, können einige Laufzeitfehler auch zur Kompilierungszeit entdeckt werden, z. B. Ganzzahldivision durch Null, String Index außerhalb der Grenzen, jede Operation, die zu einer ungültigen Gleitkommazahl führt usw.
Die Ergebnisse aller arithmetischen Operationen, logischen Operationen und Vergleichsoperationen zwischen Konstanten sind ebenfalls Konstanten. Typkonvertierungsoperationen für Konstanten oder die folgenden Funktionsaufrufe geben konstante Ergebnisse zurück: len, cap, real, imag, complex und unsafe. Größevon.
Das obige ist der detaillierte Inhalt vonWas ist const in Golang?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!