Frage zu : (Anfänger)



  • habe eine Methode die so lautet:

    Listenelemnt( Person *daten=NULL, Listenelemnt *next=NULL)
           :personendaten(new Person(*daten)),
           next(next)
    {
    
        cout <<"Konst Aufruf" <<daten->nachname<<endl;
    }
    

    Mir ist klar das beim Auruf cout ausgegeben wird, nur mich verwirrt die
    Parameterübergabe total.
    Also n zeiger auf Person und ein Zeiger auf listenelemnt, und per default glaub ich NULL.
    Aber was hat der Doppelpunkt danach zu sagen und
    wieso dann noch das komma vor dem next ?? 🙄



  • C++ Laie schrieb:

    Aber was hat der Doppelpunkt danach zu sagen und
    wieso dann noch das komma vor dem next ?? 🙄

    Das ist eine Initialisiererliste. Näheres findest du in einem C++-Buch oder -Tutorial deiner Wahl.



  • Das was nach der Parameterliste kommt, ist die sogenannte Intialisierungsliste. In diesem Fall werden mit den Daten von dem Zeiger 'daten' das Objekt personendaten vom Typ Person dynamisch angelegt und intialisiert. Gleiches Geschieht mit Zeiger 'next' vom Typ Listenelement.

    P.S. Mehrere Elementintialisierer werden durch ein Komma getrennt.

    Für weitere Fragen siehe bitte C++ Tutorials oder C++-Bücher...

    Caipi


Anmelden zum Antworten