Publié · en amélioration
Programming language · Depuis 1985
C++ est un langage compilé qui ajoute classes, templates et RAII à la performance et au contrôle matériel du C, des moteurs de jeu aux logiciels système.
C++ est un langage de programmation généraliste que Bjarne Stroustrup a lancé aux Bell Labs sous le nom de « C with Classes ». Largement compatible avec le C, il y ajoute classes, templates, exceptions et surcharge d'opérateurs ; sa norme est aujourd'hui maintenue par un comité ISO (WG21). Depuis C++11, une nouvelle norme paraît environ tous les trois ans, et avec C++17 et C++20 s'est imposé un style plus sûr et plus expressif, appelé « C++ moderne ».
C++ excelle partout où il faut maîtriser finement les performances et l'organisation de la mémoire : moteurs de jeu, navigateurs web, bases de données, compilateurs, systèmes de trading et appareils embarqués, où la latence et la consommation de ressources comptent. Grâce au principe du « zéro surcoût » (on ne paie pas pour ce qu'on n'utilise pas), on peut s'appuyer sur des abstractions de haut niveau tout en obtenant une efficacité proche d'un code machine écrit à la main.
Pour débuter, installez un compilateur adapté à votre système (MSVC via Visual Studio sous Windows, Clang des Xcode Command Line Tools sous macOS, g++ sous Linux) et compilez vous-même quelques programmes courts. Gardez à portée de main un cours d'initiation comme learncpp.com pour la syntaxe et cppreference.com pour la bibliothèque standard. Prendre dès le départ l'habitude de std::vector, std::string et des pointeurs intelligents vous évitera la plupart des erreurs de gestion manuelle de la mémoire.
Classes, templates et fonctions inline se compilent en un code machine proche de ce qu'on écrirait à la main, et les fonctionnalités inutilisées ne coûtent rien.
Les destructeurs s'exécutent automatiquement quand un objet sort de sa portée : mémoire, fichiers et verrous sont libérés de façon prévisible, sans ramasse-miettes.
Les templates permettent d'écrire du code indépendant des types, et la bibliothèque standard fournit conteneurs, algorithmes, chaînes et outils de threads éprouvés.
On peut mêler styles procédural, orienté objet, générique et fonctionnel, tandis que la norme continue d'évoluer, par exemple avec les concepts et les ranges de C++20.
Sous Windows, installez Visual Studio en cochant la charge de travail « Développement Desktop en C++ », qui fournit le compilateur MSVC. Sous macOS, lancez xcode-select --install dans le Terminal pour obtenir les Xcode Command Line Tools (Clang). Sous Debian ou Ubuntu, installez g++ et CMake avec la commande ci-dessous.
sudo apt install build-essential cmakeOuvrez un nouveau terminal et vérifiez que le compilateur affiche sa version. Sous macOS, la commande g++ renvoie vers Apple Clang. Sous Windows, ouvrez « Developer Command Prompt for VS » et lancez cl pour voir la version de MSVC.
g++ --versionCompilez hello.cpp avec la norme C++20 et les avertissements activés, puis lancez-le. Avec MSVC sous Windows, compilez avec cl /EHsc /std:c++20 hello.cpp et exécutez hello.exe.
g++ -std=c++20 -Wall -Wextra -o hello hello.cpp && ./hello#include <iostream> inclut la bibliothèque standard d'entrées-sorties. La fonction main est le point de départ du programme, et l'opérateur << envoie la chaîne vers std::cout, qui l'affiche à l'écran. return 0 indique au système d'exploitation que le programme s'est terminé correctement. L'option -std=c++20 demande à g++ de compiler selon la norme C++20, puis on exécute le binaire hello obtenu.
hello.cpp
#include <iostream>
int main() {
std::cout << "Hello, world!\n";
return 0;
}
g++ -std=c++20 -o hello hello.cpp && ./helloSix chapitres pour aller de l'installation aux notions essentielles de C++.
Posez vos questions, partagez votre expérience et échangez vos avis sur C++.
Aucune discussion pour l'instant. Lancez la première.
0 commentaire
Se connecter · Connectez-vous pour laisser un commentaire.
Soyez le premier à commenter.