Heim >Backend-Entwicklung >Golang >Wie kann ich ein Go-Slice in ein Array konvertieren, ohne es zu kopieren?
In Go kann die Konvertierung eines Slices in ein Array ohne Kopieren durch die Verwendung eines Tricks oder einer for-Schleife erreicht werden.
Um den Trick anzuwenden, übergeben Sie das Array als Slice an die Kopierfunktion:
type Lead struct { Magic [4]byte Major, Minor byte Type uint16 Arch uint16 Name string OS uint16 SigType uint16 } lead := Lead{} copy(lead.Magic[:], buffer[0:4])
Alternativ eine for-Schleife kann verwendet werden:
for index, b := range buffer[0:4] { lead.Magic[index] = b }
Mithilfe von Literalen kann ein Slice direkt in ein Array umgewandelt werden:
type Lead struct { Magic [4]byte Major, Minor byte Type uint16 Arch uint16 Name string OS uint16 SigType uint16 } lead := Lead{ Magic: [4]byte{'h', 'e', 'l', 'l'}, ... }
Das obige ist der detaillierte Inhalt vonWie kann ich ein Go-Slice in ein Array konvertieren, ohne es zu kopieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!