Description du cours
Ce module est consacré à la conception des classes et à l’héritage. Nous présenterons les concepts d’une bonne conception de classe. Nous montrerons comment utiliser l’héritage pour décrire des objets du monde réel. Nous décrirons également les différents types d'héritage et comment les utiliser. Nous introduirons également le concept de composition qui peut être utilisé pour décrire les composants de l'objet réel.
Objectifs de la formation
- Apprendre les principes d’une bonne conception de classe
- En savoir plus sur l’héritage
- En savoir plus sur la composition des classes
Compétences que vous apprendrez
- C++ (langage de programmation)
- Principes de base du C++
- Concepts C++
- Modules C++
- Module de fonction
- Modules logiciels
Ce que vous allez apprendre
- Distinguer les valeurs (L values) des valeurs (R values) en C++
- Utiliser std::move pour transférer des ressources entre les objets
- Implémenter un constructeur de déplacement (move constructor) et un opérateur d'affectation de déplacement (move assignment operator)
- Appliquer l'idiome copier-échanger (copy-and-swap idiom) pour une affectation sécurisée
- Respecter la règle de 3/5/0 lors de la conception des classes
Points clés à retenir
- Le cours introduit la sémantique de déplacement (move semantics) en C++ et explique en quoi elle consiste.
- Il fait la distinction entre les L-values et les R-values, ce qui est nécessaire pour comprendre la sémantique de déplacement.
- Il couvre l'utilisation de std::move, le constructeur de déplacement (move constructor) et l'opérateur d'affectation par déplacement (move assignment operator).
- Il présente l'idiome copy-and-swap (copier-échanger) et la règle des 3/5/0.
Foire aux questions
Quels sujets couvre ce cours sur la Sémantique de Déplacement (Move Semantics) en C++ ?
Il explique ce qu'est la sémantique de déplacement (move semantics), comment comprendre les L-values et les R-values, l'utilisation de std::move, le constructeur de déplacement (move constructor), l'opérateur d'affectation par déplacement (move assignment operator), l'idiome copy-and-swap (copier-échanger), et la règle des 3/5/0.
À quelles compétences ce cours est-il lié ?
Il se rapporte au langage de programmation C++, aux fondamentaux du C++, aux concepts du C++, aux modules C++, au module de fonctions (Function Module) et aux modules logiciels (Software Modules).
Comment le cours est-il structuré ?
Le cours est organisé en leçons couvrant la sémantique de mouvement (move semantics), les L-values et les R-values, std::move, le constructeur de mouvement (move constructor), l'opérateur d'affectation par mouvement (move assignment operator), l'idiome copy-and-swap, et la Règle des 3/5/0.









