1. Introduction au C++



sommaire chapitre 1

1.3. C++ un meilleur C ?

C++ introduit un ensemble d'améliorations par rapport au langage C :

En ce qui concerne le concept d'objet, on introduit :

1.3.1. En quoi C++ est-il meilleur que le langage C

La notion de classe (encapsulation des données) et celle d'héritage (réutilisabilité du code) permettent d'être plus proche des concepts humains ce qui permet de simplifier la conception des applications (diagrammes de classes UML).

La généricité apporte également un confort dans la réutilisation du code.

1.3.2. Quels sont les inconvénients du C++

1.3.2.a  permissivité

C++ repose sur le langage C et donc en reprend les défauts. C'est un langage expressif mais très permissif

Le degré de liberté laissé au programmeur dans l'écriture des expressions ainsi que la sémantique subtile du langage (cas des pointeurs combinés aux opérateur de post ou pré-incrémentation) conduisent à l'introduction non volontaire de nombreuses erreurs parfois difficiles à détecter. On pourra lire à ce sujet l'ouvrage de Jacquelin Charbonnel qui distingue entre autres causes d'erreurs :

1.3.2.b  plusieurs sémantiques pour un même opérateur

Plusieurs opérateurs possèdent des sémantiques différentes ce qui peut rendre la lecture du code difficile :