BlitzMax NG Arrays vergrößern
Übersicht BlitzMax, BlitzMax NG FAQs und Tutorials
DivineDominionBetreff: BlitzMax NG Arrays vergrößern |
Mo, Mai 20, 2019 12:09 Antworten mit Zitat |
|
---|---|---|
Habe mit einem auto-growing Array herumgespielt und einem anderen Entwickler auf GitHub einen Voirschlag hinterlassen, der in einem Performancevergleich ausgeartet ist.
http://sodaware.sdf.org/blog/b...on-arrays/ Der Trick ist bei bmx-ng im Grunde, "array slices" zu verwenden. Das ist am schnellsten, und auch schnell geschrieben: BlitzMax: [AUSKLAPPEN] Method ResizeArray:Int[](target:Int[], newCapacity:Int) Seine Beispielimplementation `_grow()` wird immer dann aufgerufen, wenn in `Add` das Limit erreicht wird, oder in `Set` ein Index außerhalb der Arraygrenzen verwendet wird: https://github.com/Sodaware/so...g.bmx#L316 BlitzMax: [AUSKLAPPEN]
Daraus folgt, dass man ein leeres Array/ein Array mit 0 Elementen initialisieren und später einen Wert an den Index 9999 schreiben kann, ohne sich um die Arraygröße zu kümmern. |
||
christian.tietze@gmail.com - https://christiantietze.de
macOS |
Übersicht BlitzMax, BlitzMax NG FAQs und Tutorials
Powered by phpBB © 2001 - 2006, phpBB Group