466 Stimmen

Unterschied zwischen := und = Operatoren in Go

Was ist der Unterschied zwischen den = und := Operatoren und was sind die Anwendungsfälle für sie? Sie scheinen beide für eine Zuweisung zu sein?

12voto

Gustav Punkte 2804

:= deklariert und weist zu, = weist nur zu

Es ist nützlich, wenn Sie Ihren Code nicht mit Typ- oder Strukturdeklarationen vollstopfen möchten.

// Verwendung mit =
var i int
var U, V, W float64
var k = 0
var x, y float32 = -1, -2

// Verwendung mit :=
i, j := 0, 10
f := func() int { return 7 }
ch := make(chan int)

8voto

Aus dem Referenzdokument: (tour.golang.org)

Innerhalb einer Funktion kann die kurze Zuweisung := anstelle einer Variablendeklaration mit implizitem Typ verwendet werden.

Außerhalb einer Funktion beginnt jeder Konstrukt mit einem Schlüsselwort (var, func, usw.) und das := Konstrukt ist nicht verfügbar.

2voto

Omkar Kulkarni Punkte 39

In Go := steht für Deklaration und Zuweisung auch während = nur für die Zuweisung ist

zum Beispiel:

var s string = "Omkar"

s:= "Omkar"

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X