C++
C++ | |
---|---|
Auteur(s) | Bjarne Stroustrupe |
Développeur(s) | Bjarne Stroustrupe |
Première version | 1983 |
Dernière version | C++20 (sortie en 2020) |
Système d'exploitation supporté | Multiplateforme |
Type | Générique, procédural et orienté objet |
Extension de fichier | .cpp et .ino (avec le compilateur Arduino) |
Dérivé de | C |
État | Actif, toujours utilisé |
Modifier | voir modèle • modifier |
Le C++ (prononciation : « cé plus plus ») est un langage de programmation de bas niveau créé en 1983 à partir des langages C (pour la rapidité) et Simula (pour l'orienté objet) par Bjarne Stroustrup lorsqu'il était chercheur aux laboratoires Bell de la compagnie AT&T. Il est aujourd'hui l'un des langages de programmation le plus utilisé dans le monde1
Son nom d'origine était C with classes (C avec classes). Il s'agit d'une version « améliorée » de C.
De très nombreux et célèbres logiciels sont écrits en C++, par exemple2 :
- l’interface utilisateur de l’iPod ;
- Microsoft Windows (système d’exploitation) ;
- OpenOffice (couplé à du Java) et Microsoft Office (suites d’applications bureautiques) ;
- Adobe Photoshop (traitement d’images) ;
- Mozilla Firefox et Google Chrome (navigateurs Web) ;
- Maya (modélisation en trois dimensions) ;
- KDE (environnement de bureau linux) ;
- Les systèmes d'exploitation des consoles tels que la PS3 et la PS4.
- la plupart des jeux vidéo.
Le C++ est différent du langage C :
- un programme écrit en C ne sera pas forcément accepté par un compilateur de C++ ;
- le C++ combine la programmation orientée objet (absente en C) et la programmation impérative.
C et C++ partagent aussi beaucoup d’aspects fondamentaux, comme leur gestion manuelle de la mémoire avec les pointeurs, ou leur système de types.
Le nom « C++ » utilise l'opérateur d'incrémentation (<code>++</code>) du C, signifiant « C augmenté ».
Fonctionnalités introduitesModifier
Fonctionnalités introduites par rapport au C :
- Le typage des "prototypes" de fonctions
- Les déclarations reconnues comme instructions
- Les opérateurs "new" et "delete"
- Le type de données "bool" (booléen)
- Les références "&"
- Les variables et fonctions const
- Fonctions inline
- Les référentiels lexicaux
- Les classes
- La surcharge des opérateurs
- Les templates
- Gestion d'exceptions
- Fonctions lambda
- L'inférence de type "auto"
- Références rvalue "&&"
Programme d'exempleModifier
#include <iostream>
using namespace std;
int main ()
{
cout << "Hello World!" << endl;
}
Ce programme affiche le typique "Hello World!" à l'écran.
#include <iostream>
signifie que l'on va utiliser les fonctionnalités d'entrée/sortie (dans cet exemple, afficher du texte à l'écran).main
est la fonction principale du programme. Ce qu'elle fait est indiqué entre{ ... }
. Devant son nom,int
signifie quemain
renvoie un nombre entier (si tout va bien, 0).std::cout << "Hello World!" << std::endl
s'occupe d'afficher le texte à l'écran (std::cout
) en ajoutant un retour à la ligne (std::endl
).
Autre exemple :
#include <iostream>
#include <string>
using namespace std;
int main()
{
string nom;
cout << "Entrer votre nom :" << endl;
cin >> nom;
cout << "Votre nom est : " << nom << endl;
return 0;
}
Ce programme va définir une variable nom. Puis, le texte "Entrez votre nom" va s'afficher à l'écran. On peut alors entrer notre nom qui sera stocké dans la variable nom. Enfin, le texte "votre nom est [ton nom que tu as entré précedemment]".
Création de programmesModifier
Pour transformer du code source C++ en un programme exécutable (c'est-à-dire que l'ordinateur peut faire fonctionner), il faut un logiciel : le compilateur. Il existe différents compilateurs de C++, parmi lesquels g++ (une partie de GCC, la suite de compilateur de GNU) et Visual C++ (Microsoft).
Pour faciliter l'écriture de code source C++, on utilise souvent des EDI (IDE en anglais) comme Code::Blocks, Visual Studio ou Qt Creator, ce dernier étant principalement utilisé pour développer des applications graphiques (c'est-à-dire avec fenêtres, boutons, etc.) avec le framework Qt.
RéférencesModifier
- ↑ D'après les classements TIOBE et celui établi à partir de comp.lang, la catégorie de newsgroups des langages de programmation.
- ↑ Ces exemples ont été rassemblés par Bjarne Stroustrup lui-même sur le site d’AT&T.
Les langages de l’informatique
|
|
|