Pointer * & C++

Gast #4853567
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
Gast #4853570
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.
#4853582
Folgender Artikel erklärt Zeiger:
https://www.mikrocontroller.net/articles/Zeiger


Peter 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.
Gast #4853585
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.
#4853631
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!
Gast #4853646
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.

Antwort schreiben

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.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.