Het scheelt wel werk. Toch vraag ik me af hoe netjes het is. Immers de functionaliteit van de base class kan nu veranderen door middel van die integer. Deze stap slaat de derived classes geheel over, als ik het goed begrijp.
De ontwerper van een derived class kan er dus niet echt meer op aan dat de implementatie, of belangrijker de functionaliteit, van de baseclass waarop hij zijn ontwerp heeft gebaseerd hetzelfde blijft. Bij het expliciet toevoegen van een constructor geeft dit een extra controle-laag die de derived class de mogelijkheid geeft om hierop in te spelen.
Aan de andere kant geeft het wel meer flexibele mogelijkheden om in latere stages in het ontwikkelproces, of na oplevering, nog wijzigingen door te voeren.
Nou goed, ik zet m'n vraagtekens erbij, maar de mensen van de C++ standaard zullen ongetwijfeld goede redenen hebben om dit (eventueel) op te nemen in de komende standaard
[Edit]Oh ik zie nu dat de derived class bepaalt of er gebruik mag worden gemaakt van de default 'routing' naar de base class constructor. Wat is dan het verschil met een expliciete constructor maken of deze nieuwe construct? Behalve dat het 'korter' is?
[
Voor 13% gewijzigd door
Orphix op 18-10-2004 22:01
]