KnowledgeCity

Sémantique de déplacement en C++

Ce module traite la sémantique des déplacements. Vous apprendrez à utiliser la sémantique de déplacement, quand l’utiliser et si vous devez ou non l’utiliser. Vous apprendrez également à utiliser la sémantique de déplacement pour rendre le code plus efficace.
Regardez la première leçon gratuitement — accédez aux 7 leçons complètes.

To view this video please enable JavaScript.

Cours : À la demande
Avancé  Fournisseur Mikhail Veygman  7 Leçons ·  33m  en Arabe, Allemand, Anglais, Espagnol, Français, Portugais, Chinois simplifié 

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.

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.