Heim  >  Artikel  >  Backend-Entwicklung  >  Warum können wir in Go keine konstanten Karten deklarieren?

Warum können wir in Go keine konstanten Karten deklarieren?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-12 21:40:03495Durchsuche

Why Can't We Declare Constant Maps in Go?

Konstante Karten in Go: Warum sie nicht zulässig sind

In Go kann die Deklaration einer konstanten Karte wie folgt einen Fehler auslösen:

const (
    running = map[string]string{
        "one": "ONE",
        "two": "TWO",
    }
)

Da stellt sich die Frage: Warum erlaubt Go keine Const-Maps?

Gemäß der offiziellen Go-Sprachspezifikation umfassen gültige Konstantenwerte numerische Typen (Rune, Ganzzahl, Gleitkomma). , imaginär), Strings, Bools und bestimmte integrierte Funktionsergebnisse. Karten, Arrays und Slices gelten jedoch nicht als numerische Typen.

Während numerische Typen, Zeichenfolgen und Bool-Werte als Konstanten definiert werden können, ist dies bei zusammengesetzten Datenstrukturen wie Karten nicht möglich. Dies liegt daran, dass Konstanten Werte zugewiesen werden müssen, die unveränderlich und zur Kompilierungszeit bekannt sind, eine Eigenschaft, die Karten nicht besitzen.

Das obige ist der detaillierte Inhalt vonWarum können wir in Go keine konstanten Karten deklarieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn