Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Guide Définitif sur les Pointeurs Partagés vs Uniques vs Faibles | Sujets Avancés
Pointeurs Intelligents C++
course content

Contenu du cours

Pointeurs Intelligents C++

Pointeurs Intelligents C++

1. Introduction aux Pointeurs Intelligents
2. Pointeurs Uniques
3. Pointeurs Partagés
4. Pointeurs Faibles
5. Références
6. Sujets Avancés

book
Guide Définitif sur les Pointeurs Partagés vs Uniques vs Faibles

Dans le dernier chapitre théorique de notre cours, nous renforcerons tous les concepts appris jusqu'à présent pour créer un tableau comparatif complet. Ce tableau servira de guide pratique pour nous aider à sélectionner le pointeur intelligent le plus adapté à divers besoins de gestion de mémoire dynamique.

Partagé
Unique
Faible
Sémantique de propriétéPermet à plusieurs pointeurs de partager la propriété d'un objetPropriété exclusive; un seul pointeur peut posséder un objetPointeurs non-propriétaires; n'affectent pas la durée de vie de l'objet
ConstructionCréé en utilisant std::make_shared ou std::shared_ptrCréé en utilisant std::make_unique ou std::unique_ptrPas de construction directe; dérivé des pointeurs partagés
AdéquationConvient pour les scénarios nécessitant une propriété partagéeIdéal pour les scénarios nécessitant une propriété exclusiveRompt les dépendances cycliques
Cas d'utilisationRessource de base de données partagée; objet compteur partagé, etc.Une ressource de base de données possédée exclusivement par une classe; un objet compteur dynamique exclusif à une classe, etc.Pour représenter des nœuds faibles dans un graphe ou une liste chaînée; pour implémenter des modèles observateurs
Surcharge mémoirePlus élevée, en raison du comptage de références pour suivre la propriétéInférieure aux pointeurs partagés car aucun comptage de références n'est impliquéSurcharge négligeable; dépend de l'utilisation du pointeur partagé
Impact sur la performanceLe plus élevé, en raison du comptage de référencesInférieur, car aucun comptage de références n'est nécessaireMinimal; juste un observateur
CopiabilitéPossiblePas possiblePossible
AffectabilitéAffectableNon affectableAffectable
Nettoyage mémoireDésalloué lorsque le compteur de références atteint zéroAutomatiquement désalloué lorsque le pointeur propriétaire sort de la portéeAucun effet sur la durée de vie de l'objet
Références circulairesPossiblePas possibleNon applicable
Sécurité des exceptionsSûrSûrSûr
Terminer le cours ?

Terminer le cours ?

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 6. Chapitre 4
We're sorry to hear that something went wrong. What happened?
some-alt