PTRs gemeinsamen Einstellung
c{nullptr}
Ist das gültig auf null?
Ja. Das wird den shared_ptr(std::nullptr_t)
Konstruktor aufrufen.
Andere Möglichkeit ist Wert Initialisierung, die den Standardkonstruktor aufruft: c()
.
Oder haben Sie einfach keinen Eintrag in der Elementinitialisierungsliste.Mitglieder, die keinen Eintrag in der Mitgliederinitialisierungsliste haben und keinen Klammerinitialisierer haben, werden standardmäßig initialisiert. Standard initialisierte Klassenobjekte werden mit dem Standardkonstruktor initialisiert. Dann benötigen Sie keinen benutzerdefinierten Konstruktor. Der implizit generierte Standard initialisiert alle Mitglieder, was genau das ist, was Sie wollen.
Wenn ich Ihre Frage richtig verstehe, müssen Sie nichts tun. – Borgleader
Was ist 'MIL'? – user2079303
Sie müssen sich bewusst sein, dass Klassentypen (im Gegensatz zu Basistypen) bereits implizit standardmäßig initialisiert sind, sodass Sie selbst nichts tun müssen. –