Zeiger auf Methode



  • Arbeite mich gerade mit ersten angelesenen C++-Kenntnissen in ein Programm ein, das ich geringfügig ändern möchte.

    An einer Stelle könnte ich eine Methode auf zwei Arten aufrufen (Fall 1 oder Fall 2), beides lässt sich compilieren.

    Fall 1: m_pParent->m_canvas->m_BalloonToolWnd.Create(this);

    m_pParent ist ein Element (Zeiger) der Klasse CPageSpergrm vom Typ CSampleDlg
    m_canvas ist ein Element (Zeiger) der Klasse CSampleDlg vom Typ CCanvas
    m_BalloonToolWnd ist ein Element der Klasse CCanvas vom Typ MagWnd
    Create(this) ist eine Elementfunktion (Methode) der Klasse MagWnd

    Fall 2: m_BalloonToolWnd.Create(this);

    m_BalloonToolWnd ist ein Element der Klasse CPageSpergrm vom Typ MagWnd
    Create(this) ist eine Elementfunktion (Methode) der Klasse MagWnd

    Wenn ich es richtig verstehe, wird im Fall 2 die Methode für das Objekt m_BalloonToolWnd der Klasse CPageSpergrm aufgerufen.

    Aber wie ist es im Fall 1?



  • Du hast es doch schon aufgeschrieben:

    m_BalloonToolWnd ist ein Element der Klasse CCanvas vom Typ MagWnd


Log in to reply