Arrays mit dynamischer Laufzeitgröße in Go zuweisen
Im Gegensatz zu vielen anderen Programmiersprachen werden Arrays direkt mit einer Laufzeitgröße zugewiesen ist in Go nicht möglich. Es gibt jedoch eine alternative Lösung, bei der Slices verwendet werden.
Das folgende Beispiel veranschaulicht das Problem:
n := 1 var a [n]int // Illegal array bound n
In Go muss die Array-Größe ein konstanter Ausdruck sein. Um diese Einschränkung zu überwinden, können Sie mit der make-Funktion ein Slice erstellen:
n := 12 s := make([]int, n, 2*n) // Creates a slice and underlying array with size 2*n
In diesem Beispiel wird s als Slice mit einer Kapazität von 2*n und der Länge n initialisiert. Das zugrunde liegende Array wird von Go zugewiesen und vor direkter Manipulation verborgen.
Slices werden in Go aufgrund ihrer dynamischen Natur und der Fähigkeit, je nach Bedarf zu wachsen oder zu schrumpfen, gegenüber Arrays bevorzugt. Sie bieten mehr Flexibilität und Effizienz im Umgang mit dynamischen Daten. Durch die Verwendung von Slices können Sie die Einschränkungen für Arrays mit fester Größe umgehen und während der Laufzeit mit Arrays mit dynamischer Größe arbeiten.
Das obige ist der detaillierte Inhalt vonWie kann ich Arrays mit dynamischer Laufzeitgröße in Go zuordnen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!