Frage

Wie sind Arrays in "D" manipuliert?

War es hilfreich?

Lösung

Hier eine vollständige Referenz von Array-Manipulationen in D. finden

Andere Tipps

Zu Ihrer Information. Sie können auch kopieren mit:

int[7] a;
int[] b;
b = a[5..7].dup;

Arrays in Scheiben schneiden, es ist einfach eine Frage des mit

int[7] a;
int[] b;
b = a[5..7];

, die b stellt [0] bis a [5] und b [1] bis a [6]. Aber denken Sie daran, dass dies ein Hinweis auf die Elemente in a, nicht eine weitere Kopie von ihnen. Wenn Sie b ändern [0], dies wirkt sich auch auf ein [5].

Wenn Sie kopieren möchten, müssen Sie tun:

int[7] a;
int[2] b;
b[0..1] = a[5..7];

Dies liegt daran, b ein statisches Array ist; in dem ersten Codeblock, war es dynamisch (effektiv ein Zeiger auf irgendwo innerhalb eines anderen Array).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top