next up previous contents
Next: Bibliographie Up: Les pointeurs Previous: Listes chaînées

Pointeurs et références

Vous avez certainement noté la similitude qui existe entre l'opérateur & d'accès à l'adresse d'un objet et le mode de passage de paramètres dit ``par référence'' (voir section gif).

Il existe en effet un rapport très étroit entre ces deux concepts, puisque lors d'un passage de paramètre par référence, c'est l'adresse de l'objet passé comme paramètre effectif lors de l'appel qui est transmise à la fonction ou procédure appelée. Cependant, le fait que l'adresse est transmise plutôt que la valeur est ``transparent'' pour le programmeur.

Pour illustrer cette similitude, voyons comment effectuer un passage de paramètre par adresse, d'abord en utilisant, puis sans utiliser la notion de référence. Notons au passage que la seconde manière était la seule façon de procéder en C (ANSI ou non).

Voici tout d'abord la version C++ d'un programme échangeant le contenu de deux variables :

ex797

Et voici maintenant la version ``C'' de ce programme, utilisant des pointeurs pour produire rigoureusement le même effet que le programme précédent :

ex801



Michel COUPRIE
Thu Sep 12 14:57:14 METDST 1996