Contenu du cours
C++ Pointeurs et Références
C++ Pointeurs et Références
Référence vs Pointers
Les références et les pointeurs fournissent un accès indirect aux valeurs des variables. mais ils ont quelques différences clés, ainsi que des avantages et des inconvénients.
Syntaxe
-
Les pointeurs sont déclarés à l'aide du symbole
*
; -
Les références sont déclarées à l'aide du symbole
&
.
Initialisation
Vous ne pouvez pas déclarer une référence vide. Mais vous pouvez déclarer un pointeur vide avec nullptr.
Réaffectation
Les références ne peuvent pas être réaffectées pour référer à un objet différent.
main
#include <iostream> int main() { int x = 125, y = 500; // creating a reference to x variable int& ref_x = x; ref_x = y; // attempt to re-assigned ref_x ref_x = 0; std::cout << x << ' ' << y; }
Pointeurs peuvent être réaffectés pour pointer vers différents emplacements mémoire
main
#include <iostream> int main() { int x = 125, y = 500; // creating a pointer to x variable int* ptr = &x; ptr = &y; // attempt to re-assigned ref_x *ptr = 0; std::cout << x << ' ' << y; }
Accéder à la valeur
Pour accéder à la valeur pointée par un pointeur, vous utilisez l'opérateur de déréférencement *
. Pour les références, vous n'avez pas besoin d'utiliser un opérateur spécial ; vous utilisez simplement la variable de référence directement.
Les pointeurs et les références sont essentiels en gestion de la mémoire, contribuant à la flexibilité des programmes. Leur utilisation dépend du contexte.
Merci pour vos commentaires !