Question

Quelle est la différence entre le constructeur de C ++ et créer Eiffels déclaration de procédure?

Quelle est l'utilité de pouvoir avoir plusieurs fonctions constructeur pour une classe? Ou est-il un autre avantage pour Eiffels « créer »?

Thankyou

Était-ce utile?

La solution

En C ++, vous pouvez surcharger les constructeurs, de sorte que vous pouvez définir plusieurs constructeurs ainsi.

La procédure de constructeur comme dans EIFFEL présente l'avantage de pouvoir définir des constructeurs différents ayant la même signature (à savoir même nombre et le type des arguments).

Imaginez une classe Triangle. Vous pouvez construire un triangle en donnant les longueurs des trois côtés (trois valeurs flottantes), ou en donnant deux côtés et l'angle englobante (également trois valeurs flottantes)

En C ++ vous devrait définir un paramètre supplémentaire (par exemple une valeur ENUM pour le « mode de construction »), en EIFFEL vous pouvez simplement définir deux procédures de construction avec des noms différents.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top