Zitat von
Oxmyx:
Zitat von
Muetze1:
Du hast den Code abgeändert. Du setzt den Instanzenzeiger und "Zeiger" gleich, ich habe aber Zeiger auf die Instanzenvariable zeigen lassen. Ich habe hier nicht beides gleich zeigen lassen!
Damit machst du einen Typecast und wandelst den Zeiger "Zeiger" (welcher bei mir nur auf die Variable ActiveEdit zeigt) in einen Instanzenzeiger um. Dies ist aber bei mir anders, da bei mir "Zeiger" nicht auf die Instanz zeigte (also kein Instanzenzeiger ist), sondern auf die Variable "ActiveEdit". Zeiger zeigt bei mir auf den Instanzenzeiger, nicht auf die Instanz. (ich liebe solche Sätze).
Du hast somit was ganz anderes gebaut als ich.
Du hast primär etwas vollkommen sinnloses gemacht, nämlich eine Indirektion. Du tust so, als gäbe es einen Unterschied zwischen einem "Zeiger" und einer "Instanzvariable". Klar, wenn ich lustig bin, baue ich 10 Indirektionen ein, aber was hat das mit der Frage zu tun?
Natürlich war es so gesehen sinnlos, aber ich nur den Weg gegangen den er so eh schon betreten hatte. Und mein Beispiel macht nun mal etwas anderes als dein Beispiel. Die Sinnlosigkeit überhaupt Zeiger zu verwenden in Bezug auf Instanzen ist eh den meisten klar, daher wäre die Nutzung eines Pointer ganz generell, wie in deinem Beispiel getan, genauso & komplett hinfällig. Dein Posting vorhin klingt so, als wenn mein Code nicht funktionieren würde. Darum geht es mir: er funktioniert weil rein logisch richtig - aber total unsinning und über 2 Ecken gebaut - klar. Auch wenn du nun mit deinem Code eine Ecke entfernst und somit den Weg abkürzt, hilft es wahrscheinlich weniger in Bezug auf den Fehler den der Poster zu Anfang mit dem Zeiger auf den Zeiger zum Instanzenzeiger gemacht hatte (siehe Deklaration von "zeiger" im aller ersten Post). Nur um den dort angefangenen Weg zu Ende zu bestreiten habe ich das Beispiel gemacht.
Der Sinn oder Unsinn des Codes, der wohl nirgendwo jemals eingesetzt wird, ist eine andere Sache - aber grundlegend ist es programmierbar, was ich aufzeigen wollte.