IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Apprendre à utiliser le constructeur par déplacement,
Un tutoriel de Andrzej Krzemienski, traduit par Kurtcpp

Le , par Community Management

0PARTAGES

7  0 
Chers membres du club,

J'ai le plaisir de vous présenter ce tutoriel de Andrzej Krzemieński pour vous apprendre à utiliser le constructeur par déplacement dans le langage C++11.

En plus du constructeur par copie, vous pouvez fournir un constructeur par déplacement pour votre classe. L'objectif d'un constructeur par déplacement est de voler autant de ressources que possible à l'objet original, aussi rapidement que possible, car l'original n'a plus besoin d'avoir une valeur significative, puisque de toute façon il va sous peu être détruit (ou parfois recevoir une nouvelle valeur). Notez que ce vol est assorti de certaines contraintes. Bien que nous puissions voler les ressources, il nous faut laisser l'objet original dans un état où il peut être correctement détruit ou remplacé par une nouvelle valeur (c'est-à-dire sans déclencher de fuites de mémoire ni de comportement indéfini). Comment implémente-t-on un tel vol ? Faisons-le pour un vecteur (rappelez-vous qu'il est implémenté avec trois pointeurs) :
Bonne lecture .

Retrouvez les tutoriels de Andrzej Krzemieński en Français
Retrouvez les meilleurs cours et tutoriels pour apprendre la programmation en C++

Une erreur dans cette actualité ? Signalez-nous-la !