Dynamic Array [Release RC1]

Übersicht Sonstiges Projekte

Neue Antwort erstellen

VirtualDreams

Betreff: Dynamic Array [Release RC1]

BeitragFr, Dez 17, 2004 22:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo und guten Abend zusammen.

Eine kleine DLL die (eindimensionale) dynamische Arrays erzeugen kann.
Arrow Erzeugung des Arrays wo immer man will, also in Funktionen, If-Strukturen,Select-Case usw
Arrow Größenänderung des Arrays zur Laufzeit ohne Datenverlust
Arrow bis zu INT_MAX Arrays möglich
Arrow Beliebiger Index kann gelöscht werden
Arrow Array kann zur Laufzeit auch komplett entfernt/entladen werden
Arrow Inhalt des Arrays kann mit einem Befehl komplett gelöscht werden
Arrow unterstützte Datentypen: Integer, Float, String
Arrow auch als Container nutzbar
Arrow theoretische möglichkeit von n dynamischen Arrays
Arrow Geschwindigkeitsoptimierung (intern)

Neue Funktionen:
Arrow Strings werden nun unterstützt
Arrow DynSort -> Sortierung für Integer & Float
Arrow Dyn***Ins -> Insert-Befehl um neuen Eintrag an Index x einzufügen (bis Dyn***Size MAX)
Arrow Damit besteht jetzt die möglichkeit das Array auch komplett als Container zu nutzen

Und hier der Download. [31KB]

Die benutzung von DLL's und der *.decls sollte jedem klar sein denke ich. Die beigelegten Programme demonstrieren die Funktion und sind gleichzeitig als Erklärung anzusehen.
Zitat: "Ich habe ein Programm geschrieben und das funst nich. Warum nich Question Jetzt warte ich schon über 10 Minuten und es hat immer noch keiner geantwortet. Evil or Very Mad Könnt ihr das nich ?"
  • Zuletzt bearbeitet von VirtualDreams am So, Dez 19, 2004 17:16, insgesamt 4-mal bearbeitet
 

D²O

BeitragFr, Dez 17, 2004 23:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Versteh das nicht ganz Confused

Das kann doch Blitz von haus aus schon.

Array Irgendwo erstellen, wärend der Laufzeit die Grösse ändern, oder
meinst Du die Grösse änderen ohne das der bisherige ihnhalt verloren geht?
Blitz+; Blitz3d; BlitzMax; GLBasic; Purebasic;
GameMaker Studio 1.4xx; AGK;

VirtualDreams

BeitragFr, Dez 17, 2004 23:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Richtig, die größe ändern OHNE das der Inhalt verloren geht. Von den wegrationalisierten bereichen ist dann natürlich der Wert auch weg.

Und welches Array in Blitz kann die größe ändern während der Laufzeit? Doch nur Types.

EDIT: Stimmt, DIM kann es, du hast recht. Aber ebend das die deklaration NUR im Hauptprogramm erfolgen kann und das ebend alle werte beim resizen verloren gehen. Die 2 Nachteile sind bei mir Vorteile. Very Happy
Zitat: "Ich habe ein Programm geschrieben und das funst nich. Warum nich Question Jetzt warte ich schon über 10 Minuten und es hat immer noch keiner geantwortet. Evil or Very Mad Könnt ihr das nich ?"

Vertex

BeitragSa, Dez 18, 2004 0:35
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich will ja nix sagen, aber wie wärs mal mit Banks?
vertex.dreamfall.at | GitHub

Travis

BeitragSa, Dez 18, 2004 1:12
Antworten mit Zitat
Benutzer-Profile anzeigen
Jo, man könnte den Inhalt des Arrays zwischenspeichern, das Array redimensionieren und anschließend wieder mit den Weten füllen. Aber geht das auch aus Funktionen heraus?
www.funforge.org

Ich hasse WASD-Steuerung.

Man kann alles sagen, man muss es nur vernünftig begründen können.
 

feider

ehemals "Decelion"

BeitragSa, Dez 18, 2004 11:58
Antworten mit Zitat
Benutzer-Profile anzeigen
@ Travis: Dein Vorschlag ist auf jeden Fall VIEL umständlicher als VirtualDreams dll.
Ich finde sie auf jeden Fall nützlich.
Danke VD!

DivineDominion

BeitragSa, Dez 18, 2004 13:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Echte dynamische Arrays, wie sie in Interpretersprachen wie PHP möglich sind, das fänd ich mal geil Wink
Zur Laufzeit erstellte assoziative Arrays und so...
christian.tietze@gmail.com - https://christiantietze.de
macOS

stfighter01

BeitragSa, Dez 18, 2004 13:50
Antworten mit Zitat
Benutzer-Profile anzeigen
dann sprechen wir mal ein leises gebet und hoffen das die offizielle version von blitzmax bald für windows verfügbar ist. Laughing
Denken hilft!

VirtualDreams

BeitragSa, Dez 18, 2004 21:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Da sich hier ja augenscheinlich einige aufregen das man sowas programmiert, bzw sagen das die bb-internen sachen zur verfügung stehen (die ja auch nicht schlecht sind) möchte ich erst mal etwas gradebiegen.
das dynamische array was ich anlegen besteht im grunde genommen aus ein einem container. in einen container kann man an x-beliebiger stelle einfügen, vorn anhängen, hinten anhängen, an beliebiger stelle löschen.
und das ganze gänzlich ohne datenverlust. hinzukommt trotz reiner dynamic kann man das ganze noch per index ansprechen. zudem bestehen möglichkeiten zwei arrays zu einem zu verschmelzen. oder ein array zu zweien zu splitten.

nehmen wir als beispiel das dim array aus bb: man kann es zwar redimensionieren->ist aber mit datenverlust verbunden. möchte man die daten weiterhin verwenden muß man schon ein zweites array anlegen->doppelte (sinnlose) speicherreservierung. dann braucht man eine schleife zum datenübertragen->fehleranfälligkeit möglich, evtl bei häufigen aufruf zu langsam.

was ist nun der vorteil meiner dll? nun, erst einmal die genannten nachteile des dim arrays sowie die obengenannten möglichkeiten (die bei mir zum teil auch genutzt werden, bzw noch implementiert werden)
desweiteren die rein dynamische reservierung von speicher, dieser wird bei meiner dll KOMPLETT freigegeben. es bleibt nur die in bb deklarierte variable erhalten (selbst das könnte ich ändern).
als weiteren vorteil würde ICH sehen, das die arrays auch problemlos über scripte oder sonstiges erstellt werden können.
desweiteren könnte man es als reinen container nutzen, zB wäre ein einsatzgebiet eine selbsterstellte gui. warum dafür? ganz einfach: es muß nicht zwangsläufig eine schleife durchlaufen werden um alles abzuchecken. man könnte problemlos weiter fenster oder sonstiges hinzufügen oder löschen, und das alles ohne schleife.


so sage ich num zum ende: es muß jeder selbst wissen ob er es nun nutzen will oder nicht, ich zwinge niemanden was auf, hab ich gar nicht nötig. wer die vorteile erkennt (wie auch immer) wird es schon gerne nutzen wollen. da aber so schlechtes feedback kommt werde ich mir in zukunft 2x überlegen noch (mal) etwas für die community zu entwickeln (wenn auch freiwillig)...
Zitat: "Ich habe ein Programm geschrieben und das funst nich. Warum nich Question Jetzt warte ich schon über 10 Minuten und es hat immer noch keiner geantwortet. Evil or Very Mad Könnt ihr das nich ?"
 

D²O

BeitragSo, Dez 19, 2004 11:25
Antworten mit Zitat
Benutzer-Profile anzeigen
Dann sag ich doch mal Danke Smile

So wie Dues jetzt erklärt hast, verstehe ich auch denn Untererschied von dem BB array zu Deinem Array.

Schön gemacht user posted image
Blitz+; Blitz3d; BlitzMax; GLBasic; Purebasic;
GameMaker Studio 1.4xx; AGK;

Neue Antwort erstellen


Übersicht Sonstiges Projekte

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group