Wie kann ich das Anhängen von Go mit zwei []Byte-Slices oder Arrays verwenden?
In Go kann es beim Anhängen von zwei Byte-Array-Slices zu Fehlern kommen aufgrund einer Typinkongruenz. Hier ist ein genauerer Blick und der richtige Ansatz, um dies zu erreichen.
Problem:
Beim Versuch, zwei Byte-Array-Slices anzuhängen, treten Fehler wie „[Array] kann nicht verwendet werden“ auf. type []uint8) as type uint8 in append" auftreten. Dies liegt daran, dass die Append-Funktion Argumente erwartet, die mit dem Elementtyp des Slice übereinstimmen.
Lösung:
Um dieses Problem zu beheben, müssen Sie die Slice-Typen explizit angeben Verwenden der Syntax []T... für das letzte Argument. In diesem Fall ist T []Byte.
Hier ist ein Beispiel:
package main import ( "fmt" ) func main() { one := make([]byte, 2) two := make([]byte, 2) one[0] = 0x00 one[1] = 0x01 two[0] = 0x02 two[1] = 0x03 result := append(one[:], two[:]...) fmt.Println(result) }
In diesem Code wird das Ergebnis als „[0 1 2 3]“ gedruckt, also effektiv kombiniert die zwei Byte-Array-Slices. Die „…“-Notation stellt sicher, dass zwei[:] als Slice-Argument übergeben wird.
Zusätzliche Hinweise:
Indem Sie diese Richtlinien befolgen, können Sie mehrere Byte korrekt anhängen Array-Slices in Go.
Das obige ist der detaillierte Inhalt vonWie füge ich zwei []Byte-Slices in Go korrekt hinzu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!