C++

De Didaquest
Aller à la navigationAller à la recherche


Autres Fiches Conceptuelles
Posez une Question


(+)

Target Icon.pngVotre Publicité sur le Réseau Target Icon.png

Puce-didaquest.png Traduction


More-didaquest.png Traductions


Puce-didaquest.png Définition

Domaine, Discipline, Thématique


More-didaquest.png Justification


Définition écrite


* Date de première version: 1985

* Paradigme: générique, orienté objet, procédural

* Auteur: Bjarne Stroustrup

* Dernière version: C++20 (décembre 2020)

* Typage: statique, unsafe, nominatif

* Normes:

               ISO/CEI 14882:1998
               ISO/CEI 14882:2003
               ISO/CEI 14882:2011
               ISO/CEI 14882:2014
               ISO/CEI 14882:2017
               ISO/IEC 14882:2020

* Influencé par: C, Simula, Ada 83, Algol 68, CLU, ML

* A influencé: Ada 95, C#, PHP, D, JavaScript, Java, X++, Rust

*Implémentations: GNU Compiler Collection, Microsoft Visual C++, Borland C++ Builder, XCode Tools

*Site web: isocpp.org [archive]

*Extension de fichier: cc, cpp, cxx, c, c++, h, hpp, hh, hxx et h++


More-didaquest.png C++ - Historique (+)


Définition graphique


Ing-connaissance.png Carte conceptuelle : C++
Ing-connaissance.png didactique.info : C++






Puce-didaquest.png Concepts ou notions associés


More-didaquest.png C++ - Glossaire / (+)



Puce-didaquest.png Exemples, applications, utilisations

Domaines d'application

C++ : Gaming

  • Le développement de jeux a été un domaine d’application majeur du C++.
  • Le langage permet de contourner les goulots d’étranglement en matière de performances, tels que l’allocation de mémoire.
  • Il permet de structurer les zones de données et de gérer la mémoire.
  • Il permet la programmation procédurale pour les opérations intensives du CPU, ce qui le rend assez rapide, et il offre un meilleur contrôle sur le matériel.
  • De nombreux moteurs de jeux sont écrits en C++.

C++ : Systèmes embarqués

  • Le C++ est largement présent dans les systèmes embarqués.
  • Il existe une demande massive d’ingénieurs en systèmes embarqués compétents en C++.
  • Les domaines comprennent les logiciels automobiles, les logiciels de contrôle de vol, le contrôle des fusées, les moteurs marins, le contrôle des éoliennes, la tomographie par ordinateur et l’instrumentation scientifique.
  • De nombreux équipements médicaux de pointe, tels que les machines IRM, utilisent C++ pour le scriptage de leurs logiciels.
  • Le C++ fait également partie des applications d’ingénierie, telles que les systèmes CAD/CAM haut de gamme.

C++ : Enseignement et recherche

  • Le langage de programmation C++ est également largement utilisé pour l’enseignement.
  • Il constitue une excellente option pour l’enseignement de concepts de base ou avancés.

Par exemple: - la sécurité des types - la gestion des ressources - les invariants peuvent être enseignés avec C++.

  • Les trois principes de la programmation orientée objet – encapsulation, héritage et polymorphisme – peuvent être enseignés en C++, tout comme les modèles de classes, les hiérarchies de classes et les modèles de conception.
  • Le C++ est également idéal pour la démonstration d’algorithmes avancés.

Environnement et installation

  • C++ est un langage de programmation à usage général et largement utilisé de nos jours pour la programmation compétitive. Il possède des fonctionnalités de programmation impératives, orientées objet et génériques.
  • C++ fonctionne sur de nombreuses plateformes comme Windows, Linux, Unix, Mac, etc. Avant de commencer à programmer avec C++. Nous aurons besoin d’un environnement à installer sur notre ordinateur local pour compiler et exécuter nos programmes C++ avec succès.
  • Si on ne souhait pas configurer un environnement local, on peut également utiliser des IDE en ligne pour compiler le programme.

Mise en place de l’environnement local


Pour configurer votre propre environnement de développement personnel sur votre ordinateur local, vous devez installer deux logiciels importants :

Éditeur de texte :

Avant de commencer à programmer avec C++, il faut avoir un éditeur de texte installé pour écrire des programmes.

  • Les éditeurs de texte sont des types de programmes utilisés pour éditer ou écrire des textes.
  • Nous utiliserons des éditeurs de texte pour taper nos programmes C++. L’extension normale d’un fichier texte est (.txt) mais un fichier texte contenant un programme C++ doit être enregistré avec l’extension ‘.CPP’ ou ‘.C’. Les fichiers se terminant par l’extension ‘.CPP’ et ‘.C’ sont appelés fichiers de code source et ils sont censés contenir du code source écrit en langage de programmation C++.
  • Ces extensions aident le compilateur à identifier que le fichier contient un programme C++.

Compilateur C++ :

  • Une fois que vous avez installé l’éditeur de texte et tapé et enregistré votre programme dans un fichier avec l’extension ‘.CPP’, vous aurez besoin d’un compilateur C++ pour compiler ce fichier.
  • Un compilateur est un programme informatique qui convertit un langage de haut niveau en langage de bas niveau compréhensible par la machine.

Mots-clés du langage

asm : Pour déclarer qu’un bloc de code doit être passé à l’assembleur.

auto : un spécificateur de classe de stockage utilisé pour définir des objets dans un bloc.

break : termine une instruction switch ou une boucle.

case : Utilisé spécifiquement dans une instruction switch pour spécifier une correspondance pour l’expression de l’instruction.

catch : spécifie les actions entreprises lorsqu’une exception se produit.

char : type de données fondamental qui définit les objets caractères.

class : pour déclarer un type défini par l’utilisateur qui encapsule des membres de données et des opérations ou des fonctions membres.

const : Pour définir des objets dont la valeur ne changera pas pendant toute la durée d’exécution du programme.

continue : - Transfère le contrôle au début d’une boucle.

défaut : par – Gère les valeurs d’expression dans une instruction switch qui ne sont pas gérées par la casse.

delete : Opérateur de désallocation mémoire.

do : indique le début d’une instruction do-while dans laquelle la sous-instruction est exécutée à plusieurs reprises jusqu’à ce que la valeur de l’expression soit logical-false.

double : type de données fondamental utilisé pour définir un nombre à virgule flottante.

else : utilisé spécifiquement dans une instruction if-else.

enum : pour déclarer un type de données d’énumération défini par l’utilisateur.

extern : Un identifiant spécifié comme extern a un lien externe avec le bloc.

float : - Type de données fondamental utilisé pour définir un nombre à virgule flottante.

for : Indique le début d’une instruction pour obtenir un contrôle répétitif.

friend : une classe ou une opération dont l’implémentation peut accéder aux données privées membres d’une classe.

goto : Transfère le contrôle vers une étiquette spécifiée.

if : indique le début d’une instruction if pour obtenir un contrôle sélectif.

inline : un spécificateur de fonction qui indique au compilateur que la substitution en ligne du corps de la fonction doit être préférée à l’implémentation d’appel de fonction habituelle.

int : type de données fondamental utilisé pour définir des objets entiers.

long : un modificateur de type de données qui définit un int 32 bits ou un double étendu.

nouveau : opérateur d’allocation mémoire.

opérateur : surcharge un opérateur c++ avec une nouvelle déclaration.

private : Déclare les membres de la classe qui ne sont pas visibles en dehors de la classe.

protected : déclare les membres de la classe qui sont privés, sauf pour les classes dérivées

public : déclare les membres de la classe qui sont visibles en dehors de la classe.

register : un spécificateur de classe de stockage qui est un spécificateur automatique, mais qui indique également au compilateur qu’un objet sera fréquemment utilisé et doit donc être conservé dans un registre.

return : renvoie un objet à l’appelant d’une fonction.

short : un modificateur de type de données qui définit un nombre entier de 16 bits.

signé : un modificateur de type de données qui indique que le signe d’un objet doit être stocké dans le bit de poids fort.

sizeof : renvoie la taille d’un objet en octets.

statique : la durée de vie d’un objet statique défini existe pendant toute la durée de vie de l’exécution du programme.

struct : pour déclarer de nouveaux types qui encapsulent à la fois des données et des fonctions membres.

switch : Ce mot-clé utilisé dans l’« instruction Switch ».

template : type paramétré ou générique.

this : Un pointeur de classe pointe vers un objet ou une instance de la classe.

throw : génère une exception.

try : Indique le début d’un bloc de gestionnaires d’exceptions.

typedef : Synonyme d’un autre type intégral ou défini par l’utilisateur.

union : Similaire à une structure, struct, en ce sens qu’elle peut contenir différents types de données, mais une union ne peut contenir qu’un seul de ses membres à un moment donné.

unsigned : un modificateur de type de données qui indique que le bit de poids fort doit être utilisé pour un objet.

virtual : Un spécificateur de fonction qui déclare une fonction membre d’une classe qui sera redéfinie par une classe dérivée.

void : Absence d’une liste de paramètres de type ou de fonction.

volatile : Définit un objet dont la valeur peut varier d’une manière indétectable pour le compilateur.

while : début d’une instruction while et fin d’une instruction do-while.


(+)


Puce-didaquest.png Erreurs ou confusions éventuelles



Puce-didaquest.png Questions possibles



Puce-didaquest.png Liaisons enseignements et programmes

Idées ou Réflexions liées à son enseignement



Aides et astuces



Education: Autres liens, sites ou portails




Puce-didaquest.png Bibliographie