Anregungen und Vorschläge zu PROFAN
Hier können Vorschläge für künftige PROFAN-Versionen, Ausgestaltung der PROFAN-Seiten und -Foren, etc. gemacht werden.

| Suchen
| Zurück zur Übersicht

Autor | Thema: Mehrdimensionale Arrays
Norbert Spörl
| Datum:25.07.01 20:47 (NSp_ware@t-online.de) |
Hallo Roland, ich habe jetzt an einer Anwendung programmiert, in der ich viel mit den mehrdimensionalen Arrays arbeite. So weit, so gut. Doch nun habe ich den Punkt erreicht, an dem mir das Neudimensionieren fehlt, d.h. ich dimensioniere neu, erhalte dadurch aber verlorenen Speicher. Es wäre auch gut, wenn man ein Array löschen könnte, um den belegten Speicher wieder frei zu bekommen. Letzters ist ja eh der 1. Bestandteil eines ordnungsgemäßen Neudimensionierens. Siehst Du eine Möglichkeit, da etwas nachzubessern ? Gruß Norbert
Thorsten.HG
| Datum:26.07.01 16:44 (galaxy@mrk-soft.de) |
Hi, zum einem: Ein Array wird NUR einmal am PRG-Anfang Declariert, dann steht es Lokal dem gesammten Programm zur verfügung. Zum zweiten gibt es CLEAR array[], womit sich ein komplettes, auch mehrdimensionales Array komplett löschen lässt. (Profan 7.0) bsp: 'Programm start DECLARE array%[300,2] array%[0,0] = 99 WhileLoop 100 array%[&loop,0] = rnd(49) array%[&loop,1] = &loop /2 Wend 'inregwo im programm CLEAR array%[] 'alle werte im array werden gelöscht
Norbert Spörl
| Datum: 27.07.01 20:04 (NSp_ware@t-online.de) |
>Ein Array wird NUR einmal am PRG-Anfang >Declariert, dann steht es Lokal dem gesammten >Programm zur verfügung. - (heiß oben besser Global und nicht Lokal) Genau da setzt ja mein Vorschlag(Wunsch) an. Aber darum ist es wahrscheinlich nicht leicht für Roland, ein Redimensionieren zu installieren. >Zum zweiten gibt es CLEAR array[], womit >sich ein komplettes, auch mehrdimensionales >Array komplett löschen lässt. (Profan 7.0) CLEAR löscht nicht das gesamte Array, sondern nur dessen Werteinhalt. D.h., der Speicher wird nicht freigegeben. Und danach kann die Elementeanzahl des Arrays nicht verändert werden. Die Dimensionierung des Arrays, also die Festlegung der Anzahl der Feldelemete kann mit der bisherigen Lösung nicht den Laufzeiterfordernissen angepaßt werden, was ich mir aber eben wünsche. Eine Lösung des Redimensionierens im Hauptprogamm bringt uns auch nicht viel weiter. Bei einer sagen wir eimal 3000-Zeilen Anwendung befindet man sich in einer Prozedur, wenn ein Killen mit einem evtl. neuen Dimensionieren des Arrays notwendig wird. Bei den Bereichen geht es ja auch. Da kann innerhalb einer Prozedur Speicher dafür belegt und wieder freigegeben werden, obwohl die Bereichsvariable global für das ganze Programm declariert wurde. Nun sagen die alten Hasen unter den Profanern sicher, dann nimm doch die Bereiche dafür. Aber die Arrays sind eben komfortabler, bzw. sollten es sein. Ich finde Profan² würde die Erweiterung der Array-Funktionalität als prozedurale Programmiersprache nicht schlecht zu Gesicht stehen. Gruß Norbert

| Zurück zur Übersicht

| Ein kostenloses WebMart Forum WebMart Homepage Tools kostenlos |