Différences entre versions de « C++ »
Ligne 57 : | Ligne 57 : | ||
Personne ne possède le langage C++. Il est libre de droits<ref>{{Lien web |titre=Programmation Langage C++ - Web-Libre.org |url=http://www.web-libre.org/programmation-langage-cpp,1675.html |site=www.web-libre.org |consulté le=2020-10-06}}</ref> ; cependant, le document de standardisation n'est quant à lui pas disponible gratuitement. | Personne ne possède le langage C++. Il est libre de droits<ref>{{Lien web |titre=Programmation Langage C++ - Web-Libre.org |url=http://www.web-libre.org/programmation-langage-cpp,1675.html |site=www.web-libre.org |consulté le=2020-10-06}}</ref> ; cependant, le document de standardisation n'est quant à lui pas disponible gratuitement. | ||
− | + | <!-- ************************* Fin ***************************************** --> | |
}}<!-- ******** Fin Fiche Didactique Définition ******************* --> | }}<!-- ******** Fin Fiche Didactique Définition ******************* --> | ||
Version du 11 mai 2022 à 13:59
Votre Publicité sur le Réseau |
Traduction
Traductions
Définition
Domaine, Discipline, Thématique
Justification
Définition écrite
Histoire
Bjarne Stroustrup commence le développement de C with Classes (C avec classes) en 1979[1]. Il travaille alors dans les laboratoires Bell où il est notamment collègue de l'inventeur du C Dennis Ritchie. L'idée de créer un nouveau langage venait de l'expérience en programmation de Stroustrup pour sa thèse de doctorat. Il s'agissait en l'occurrence d'améliorer le langage C. Stroustrup trouvait que Simula avait des fonctionnalités très utiles pour le développement de gros programmes mais qu'il était trop lent pour être utilisé en pratique (cela était dû à un problème d'implémentation du compilateur Simula), tandis que BCPL était rapide mais de trop bas niveau et non adapté au développement de gros logiciels. Quand Stroustrup commença à travailler aux laboratoires Bell, on lui demanda d'analyser le noyau UNIX en vue de faire du calcul distribué. Se rappelant sa thèse, Stroustrup commença à améliorer le langage C avec des fonctionnalités similaires à celle de Simula. C fut choisi parce qu'il est rapide, portable et d'usage général. En outre, il était une bonne base pour le principe original et fondateur de C++ : « vous ne payez pas pour ce que vous n'utilisez pas ». Dès le départ, le langage ajoutait à C la notion de classe (avec encapsulation des données), de classe dérivée, de vérification des types renforcés (typage fort), d'« inlining », et d'argument par défaut.
Alors que Stroustrup développait C with classes, il écrivit CFront, un compilateur qui générait du code source C à partir de code source C with classes. La première commercialisation se fit en . En le nom « C++ » est inventé, et en le nom du langage passa de C with classes à celui de « C++ ». Parmi les nouvelles fonctionnalités qui furent ajoutées au langage, il y avait les fonctions virtuelles, la surcharge des opérateurs et des fonctions, les références, les constantes, le contrôle du typage amélioré et les commentaires en fin de ligne. En 1985 fut publiée la première édition de The C++ Programming Language, apportant ainsi une référence importante au langage qui n'avait pas encore de standard officiel. En , c'est la sortie de la version 2.0 de C++. Parmi les nouvelles fonctionnalités, il y avait l'héritage multiple, les classes abstraites, les fonctions membres statiques, les fonctions membres constantes, et les membres protégés. En , The Annotated C++ Reference Manual (« ARM ») fut publié apportant les bases du futur standard. Les ajouts de fonctionnalités tardifs qu'il comportait couvraient les templates, les exceptions, les espaces de noms, les nouvelles conversions et le type booléen.
Pendant l'évolution du langage C++, la bibliothèque standard évoluait de concert. Le premier ajout à la bibliothèque standard du C++ concernait les flux d'entrées/sorties qui apportaient les fonctionnalités nécessaires au remplacement des fonctions C traditionnelles telles que printf
et scanf
. Ensuite, parmi les ajouts les plus importants, il y avait la Standard Template Library. Après des années de travail, un comité réunissant l'ANSI et l'ISO standardisa C++ en (ISO/CEI 14882:1998), l'année où le comité de standardisation se réunissait à Sophia Antipolis dans le sud de la France. Pendant quelques années après la sortie officielle du standard, le comité traita des problèmes remontés par les utilisateurs, et publia en 2003 une version corrigée du standard C++.
Personne ne possède le langage C++. Il est libre de droits[2] ; cependant, le document de standardisation n'est quant à lui pas disponible gratuitement.
{{{Typologie}}} |
C++ - Historique (+)
Définition graphique
Concepts ou notions associés
C++ - Glossaire / (+)
Exemples, applications, utilisations
Erreurs ou confusions éventuelles
- Confusion entre Objet et Classe
- Confusion entre Java et C++
- Confusion entre Polymorphisme et Héritage
Questions possibles
Liaisons enseignements et programmes
Idées ou Réflexions liées à son enseignement
Aides et astuces
Education: Autres liens, sites ou portails
- Comparaison d'IDE C++
- Code Blocks
- Comment installer: https://www.youtube.com/watch?v=QF9z9Awtm1o
- Généralités:
- video:* https://www.youtube.com/watch?v=2dyQZqeEgcA
- documents:*http://math.univ-lyon1.fr/~omarguin/programmation/C++Polycop1.pdf
- Tutoriels C++
- saisie et affichage :* https://openclassrooms.com/fr/courses/1421911-du-c-au-c/1422044-premier-programme-c-avec-cout-et-cin
- les boucles iteratives :*https://fr.wikiversity.org/wiki/Langage_C%2B%2B/Boucles_%26_Structures_Conditionnelles
- Exercices
Bibliographie
Pour citer cette page: ([1])
ABROUGUI, M & al, 2022. C++. In Didaquest [en ligne]. <http:www.didaquest.org/wiki/C%2B%2B>, consulté le 20, mai, 2024
- ..................
- ..................
- ..................
- ..................
- ↑ (en) Bjarne Stroustrup, A Tour of C++, Addison-Wesley, coll. « C++ In-Depth Series », , 240 p. (ISBN 978-0-13-499783-4), 16.1.1 Timeline
- ↑ Programmation Langage C++ - Web-Libre.org sur www.web-libre.org. Consulté le 2020-10-06
- Sponsors Education
- Programmation (Concepts)
- Informatique (Concepts)
- Algorithmique (Concepts)
- Robotique (Concepts)
- Développement Web (Concepts)
- Intelligence artificielle (Concepts)
- Développement mobile (Concepts)
- Informatique
- C++
- Programmation
- Pensée logique
- Programmation visuelle
- Didactique
- API
- Programmation procédurale
- Contrôle de flux
- Programmation Orientée Objet
- Classe
- Constructeur
- Méthodes
- Concepts
- C++ (Concepts)
- Fiche conceptuelle didactique