Initialisierung member



  • Hallo,

    gibt es einen Vorteil einen member im Konstruktor zu initialisieren ?

    class Hello
    {
            int member1 = 0;
            int member2;
    
            Hello()
            {
                  member2 = 0;
            }
    
    }
    


  • Früher (eigentlich sogar neulich) ging es nicht anders.



  • Ja gibt es!
    Du kannst dir sicher sein, dass diese Member-Variable initialisiert ist und keine zufälligen Werte enthält, sobald dein Objekt erstellt worden ist.



  • ?
    Es geht wohl offensichtlich um die in-class initialization.
    Vorteil im Ctor-Rumpf zu initialisieren kenne ich keinen.
    Vorteil in der initializer-list zu initialisieren (zusätzlich) ist offenbar, wenn man in einem bestimmten Ctor von einer Standard-Initialisierung abweichen will.


Log in to reply