Erklärung gesucht...



  • Hallo,

    ich habe von einem Bekannten einen Quellcode bekommen, verstehe aber eine Sache nicht ganz (ein kleiner Auszug):

    class Name{
    private: 
    Name *root; //Was bedeutet das?
    Name *next; //was bedeutet das?
    }
    

    Kann mir das einer plausibel erklären?
    Gruß
    Alex



  • könnte der anfang eine verketten liste sein.

    zeiger auf die wurzel, zeiger auf das nächste element.



  • http://tutorial.schornboeck.net/zeiger.htm

    und benutz doch bitte vernünftige Topics. Die eine 1/2 der Threads hier könnte ansonsten mit "Erklärung gesucht..." anfangen und die andere 1/2 mit "HILFE! Newbie braucht dringend Hilfe" 🙄

    wmfrs <-- dringend lesen!



  • Aha und wie soll er ein besseres Topic formulieren, wenn er gar nicht weiß was es ist?



  • ich weiss ja noch nichtmal, was er genau wissen will, was Pointer sind?

    Er hätte das Topic ja so formulieren sollen "Was bedeutet 'Name *root;'" oder so, wär doch schonmal ein Ansatz.

    Aber jetzt werden wir hier Ot 🙂



  • OK, was besseres als dieses topic ist mir nicht eingefallen.
    Normalerweise kenne ich die Deklaration:

    int *irgendwas;
    

    .
    Aber anstelle von int (oder char...) steht hier der Name der Klasse. Mich interessiert nur was dies genau beduetet und warum hier nicht auch int *irgendwas steht.
    Gruß
    Alex



  • Weil es ein Zeiger auf ein Objekt dieser Klasse ist, und kein Zeiger auf ein int.



  • Danke! So langsam habe ich es verstanden!
    Gruß
    Alex



  • Hi,

    dieses int* bedeutet Pointer auf einen int. Das heißt, wenn du einen int i = 5; hast, bedeutet int *pi = &i; , dass der Zeiger pi auf diese 5 zeigt.

    Hast du jetzt eine Klasse Person, die einen Vornamen und einen Nachnamen speichert, stellt Person pers01("Tantalus", "Teutsch"); eine Instanz dieser Klasse dar. Mit Person *ppers01 = & pers01; erhälst du einen Zeiger auf dieses Objekt der Klasse.

    Klasse* bedautet Pointer auf eine Instanz dieser Klasse (im günstigsten Fall).

    MFG, '][' !


Log in to reply