Zugriff auf aufrufendes Objekt



  • Hallo,

    ich habe eine grundsätzliche Frage zum Aufruf von Funktionen bzw. den Zugriff auf das aufrufende Objekt.

    Wenn ich eine MemberFunktion so aufrufe:

    // andere Klasse irgendwo im Projekt
    ...
    C_NewClass  p_Value;
    
    p_Value.Save(bla, blabla);
    ...
    
    // Klasse C_NewClass
    ...
    C_NewClass::Save(const CString& bla, const CString& blabla )
    {
      // hier moechte ich auf p_Value zugreifen, mit this-Pointer?
      this->GetString();
    }
    ...
    

    Zur Erklärung: Vorher war die Struktur so, dass das Objekt als Referenz an Save übergeben wurde und dann auf p_Value "direkt" zugegriffen werden konnte.

    ...
    C_NewClass  p_Value;
    
    Save(p_Value, bla, blabla);
    ...
    
    // Klasse C_NewClass
    ...
    C_AndereKlasse::Save(C_NewClass& p_Value, const CString& bla, const CString& blabla )
    {
      p_Value.GetString();
    }
    ...
    

    Ist der Zugriff mit this richtig oder geht das noch anders?



  • OhneWorte schrieb:

    Ist der Zugriff mit this richtig oder geht das noch anders?

    Kurze Antwort: Ja, der ist richtig. Aber das this kannst du auch weglassen, das setzt der Compiler implizit dazu.



  • Vielen Dank, Frage beantwortet und Code funktioniert.


Anmelden zum Antworten