est bien-sûr complètement artificiel et n'arrive jamais dans du vrai code.
Sauf que là tu as dû jouer avec un... pointeur, qui permet en effet de bidouiller en C++, comme en C vu que tu manipules directement l'adresse.
Désolé mais les pointeurs font partie du langage C++ ce qui veut en particulier dire qu'il existe des fonctions qui renvoient des pointeurs. (Pour la bonne raison que les références n'ont pas de sémantique de propriété mais seulement d'alias.) Donc qu'on passe des arguments de type référence avec comme valeur des pointeurs déréferencés — qui peuvent bien-sûr être nul.
La vraie différence entre une référence et un pointeur est qu'une référence ne peut pas être deleted.
[^] # Re: Evite le C++
Posté par Michaël (site web personnel) . En réponse au journal C(++) ?. Évalué à 3.
Et ta fonction
mafonctionn'est jamais appelée avec un pointeur nul déréférencé en argument. Un exemple du genreest bien-sûr complètement artificiel et n'arrive jamais dans du vrai code.
Désolé mais les pointeurs font partie du langage C++ ce qui veut en particulier dire qu'il existe des fonctions qui renvoient des pointeurs. (Pour la bonne raison que les références n'ont pas de sémantique de propriété mais seulement d'alias.) Donc qu'on passe des arguments de type référence avec comme valeur des pointeurs déréferencés — qui peuvent bien-sûr être nul.
La vraie différence entre une référence et un pointeur est qu'une référence ne peut pas être
deleted.