Hallo,
kennt jemand einen guten link, wo Pointer für C++ gut erklärt werden?
Immer wenn ich es mir irgendwo durchlese, denke ich, dass ihc es
verstanden habe, aber beim Umsetzen will es vorne und hinten nicht
funktionieren. Mein Konkretes Problem ist, dass ich ein Objekt einer
Methode übergeben möchte, da ich in dieser Methode Variablen des
Objektes ändern möchte, bzw. andere Methoden aufrufen möchte. Dabei
befinden die sich zu aufrufenden Funktionen in verschiedene Dateien.
Gruß
Felix
Felix schrieb:> Mein Konkretes Problem ist, dass ich ein Objekt einer> Methode übergeben möchte, da ich in dieser Methode Variablen des> Objektes ändern möchte, bzw. andere Methoden aufrufen möchte.
das macht man bei C++ mit einer Referenz
> Dabei> befinden die sich zu aufrufenden Funktionen in verschiedene Dateien.
das spielt kaum eine Rolle, wenn es um die Zeiger geht.
Folgender Artikel erklärt Zeiger:
https://www.mikrocontroller.net/articles/ZeigerPeter II schrieb:> Felix schrieb:>> Mein Konkretes Problem ist, dass ich ein Objekt einer>> Methode übergeben möchte, da ich in dieser Methode Variablen des>> Objektes ändern möchte, bzw. andere Methoden aufrufen möchte.> das macht man bei C++ mit einer Referenz
Nur wenn in jedem Fall ein Objekt vorhanden sein muss. Sobald der
Zustand "kein Objekt" auftreten kann/soll, kann man Zeiger benutzen.
Felix schrieb:> Mein Konkretes Problem ist, dass ich ein Objekt einer> Methode übergeben möchte, da ich in dieser Methode Variablen des> Objektes ändern möchte,
Dann übergebe per Referenz und verwende Methoden der Klasse (falls das
Design überhaupt sinnvoll ist).
> bzw. andere Methoden aufrufen möchte.
Das ergibt ohne weiteren Kontext keine Sinn ... Was sind die einen und
was die anderen Methoden? Was hindert dich daran, sie aufzurufen? Bitte
beschreibe doch mal das Grundproblem ohne vermeindliche Lösungsansätze.
Felix schrieb:> Hallo,> kennt jemand einen guten link, wo Pointer für C++ gut erklärt werden?> Immer wenn ich es mir irgendwo durchlese, denke ich, dass ihc es> verstanden habe, aber beim Umsetzen will es vorne und hinten nicht> funktionieren. Mein Konkretes Problem ist, dass ich ein Objekt einer> Methode übergeben möchte, da ich in dieser Methode Variablen des> Objektes ändern möchte, bzw. andere Methoden aufrufen möchte. Dabei> befinden die sich zu aufrufenden Funktionen in verschiedene Dateien.
Am besten postest Du ein Minimalbeispiel!
Beitrag "Klassenvariablen in verschiedene Funktionen ändern" ?
Erfahrungsgemäß ist es sinnvoller, die Rückfragen zu beantworten, statt
die gleiche Frage in anderer Formulierung zu wiederholen und zu hoffen,
dass jemand aus dem nichts eine Antwort herzaubert.
Minimalbeispiel:
Erstelle eine Klasse in einer Datei mit einer Alibimethode, die nur
einen Satz auf die Konsole schreibt. Das sind 15 Zeilen Arbeit.
Dann eine zweite Datei, die so wie in Deinem eigentlichen Programm
geplant die Alibimethode aufruft, das sind nochmal 10 Zeilen Arbeit.
Entweder hast Du dann das Problem selbst gefunden oder kannst das
Minimalbeispiel hier posten.
Auf gut Glück an dem jetzigen, unübersichtlich gewordenen Programm
herumzubasteln und zu hoffen, dass irgendwann irgendwie die Fehler
weggehen, funktioniert nie.
Eine eigene Frage?
Dieser Thread ist über 9 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.