Forum: Compiler & IDEs Pointer Weiterleitung auf Pointer CurrentObj


von Martin J. (bluematrix) Benutzerseite


Lesenswert?

Hallo,
ich komme nicht weiter und vielleicht sagt ihr mir auch, dass das so gar 
nicht geht...

Mein Programm besteht aus einem Struct-Array und einem Current-Pointer. 
Je nach Auswahl wird zeigt der Current-Pointer auf ein Struct in diesem 
Array.

Jetzt möchte ich noch eine Anzeige hinzufügen, diese soll immer die 
Werte aus dem Struct_Array unter Current-Pointer visualisieren.

Ich dachte ich kann es mir so einfach machen und hinterlege den 
Current-Pointer bei der Initialisierung einmalig in meiner 
Anzeigeroutine. Das Problem ist, dass die Anzeige auch nach dem ändern 
des Current-Pointers auf ein anderes Feld immer noch auf das Feld von 
der Initialisierung zeigt.

Ist ja auch logisch, da ich ja bei der Initialisierung die Adresse von 
meinem Arrayfeld hinterlege... :-(
Wie aber könnte ich das so einfach lösen, dass es trotzdem funktioniert, 
ohne dauernde Daten zu kopieren oder den Pointer in der Anzeigeroutine 
zu erneuern.

von Stephan (Gast)


Lesenswert?

Diese Anfrage ist sehr schlecht geschrieben, vielleicht nochmal drüber 
gehen und ein kleines Beispiel zeigen.

>Ich dachte ich kann es mir so einfach machen und hinterlege den
>Current-Pointer bei der Initialisierung einmalig in meiner
>Anzeigeroutine.
hier nur den Wert des Current-Pointer kopiert und nicht die Adresse?
Meine Glaskugel sagt, Pointer auf Pointer könnte die Lösung sein.

von Karl H. (kbuchegg)


Lesenswert?

Martin J. schrieb:


> Ist ja auch logisch, da ich ja bei der Initialisierung die Adresse von
> meinem Arrayfeld hinterlege... :-(
> Wie aber könnte ich das so einfach lösen, dass es trotzdem funktioniert,
> ohne dauernde Daten zu kopieren oder den Pointer in der Anzeigeroutine
> zu erneuern.

Eines von beiden wirst du aber machen müssen.
Die Frage ist, warum sich die Anzeigeroutine den Wert des 
CurrentPointers überhaupt merken muss?
Den machst du als globale Variable und die Anzeigeroutine benutzt den 
ganz einfach. Oder du übergibst diesen CurrentPointer an die 
Anzeigeroutine, wenn du die Funktion aufrufst, die die Anzeige erneuert. 
Letzters wäre wahrscheinlich die einfachere Lösung. Denn grundsätzlich 
möchte man ja möglichst wenig globale Variablen haben, um die möglichen 
Verflechtungen noch überschauen zu können.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.