Denken Sie an einen Fall, wenn die default constructor wird nicht durch den Compiler zur Verfügung gestellt werden. Dann können Sie = default
verwenden, um dem Compiler mitzuteilen, einen Standardkonstruktor für Sie trotzdem zu erstellen.
Andernfalls (und es sei denn, Sie benötigen einen speziellen Standardkonstruktor) gibt es keinen Grund, einen Standardkonstruktor in irgendeiner Weise anzugeben (mit oder ohne = default
).
In Ihrem Beispiel ist kein "expliziter" = default
Konstruktor erforderlich. Es ist mehr eine Frage des Stils.
Danke, ja in diesem Szenario verstehe ich den Nutzen davon. Aber wenn ich wirklich nur über Foo struct verfüge, was wird nun als klarer erachtet, das ctr auszulassen oder genauer zu sein und es als Default zu deklarieren? – user695652