Ezzz
Grünschnabel
Hallo!
Ich habe folgendes Problem:
Ich nutze diesen struct und initialisiere in der Header-Datei einen darauf basierenden Typ. Nun möchte ich zur Laufzeit der Klasse den kompletten struct bzw. den Typ wieder so zurücksetzen, das der Speicher wieder komplett freigegeben wird und keine Informationen mehr in den structs sind.
Das funktioniert aber leider nicht. Zum einen bleiben die Pointer bestehen und zeigen nicht "ins leere", zum anderen wird kein Speicher freigegeben, im Gegenteil. Laut dem taskmanager steigt der Speicherbedarf.
Wie ihr an der Frage sehen könnt, bin ich noch ein ziemlicher Anfänger...
Wahrscheinlich hab ich irgendwo einen Denkfehler.
Schon mal vielen Dank,
Grüße Ezzz
Ich habe folgendes Problem:
Ich nutze diesen struct und initialisiere in der Header-Datei einen darauf basierenden Typ. Nun möchte ich zur Laufzeit der Klasse den kompletten struct bzw. den Typ wieder so zurücksetzen, das der Speicher wieder komplett freigegeben wird und keine Informationen mehr in den structs sind.
Code:
struct SpElement
{string urlname; class ListEl *outptr; class ListEl *inptr; };
...
define MAX = 100000
...
class Klasse
{
private SpElement vek[MAX]
...
In dem konkreten Fall wird also der string urlname auf NULL gesetzt. Aber was mache ich mit den Pointern? Ich hatte mir das so vorgestellt:
for (long i = 0; i<MAX; i++)
{
vek[i].urlname="";
vek[i].inptr=NULL;
vek[i].outptr=NULL;
}
Das funktioniert aber leider nicht. Zum einen bleiben die Pointer bestehen und zeigen nicht "ins leere", zum anderen wird kein Speicher freigegeben, im Gegenteil. Laut dem taskmanager steigt der Speicherbedarf.
Wie ihr an der Frage sehen könnt, bin ich noch ein ziemlicher Anfänger...
Wahrscheinlich hab ich irgendwo einen Denkfehler.
Schon mal vielen Dank,
Grüße Ezzz