Déclarer et déléguant objets fondamentaux Considérez le segment de code suivant: int hisInt = 5; int & herInt = hisInt; cout La première déclaration déclare un objet int. Vous devez apprendre à interpréter la deuxième déclaration. Voici l'opérateur d'affectation se comporte d'une manière différente. Il ne se comporte pas de la manière habituelle. La seconde déclaration est interprétée comme ceci: & herInt (y compris le &) devient l'adresse de l'objet, hisInt.
L'adresse de l'hisInt objet sera effectivement stocké dans une région dans la mémoire; vous serez en mesure d'y accéder avec & herInt (y compris le &). Notez la position de & et l'identifiant de l'objet réel dans la deuxième déclaration. Notez également que le nom associé à la référence est introduit dans cette deuxième déclaration. Penchons-nous sur la troisième déclaration; & herInt comme une entité est un pointeur. Un pointeur est une adresse à un objet en mémoire. Dans la section précédente, nous avons vu une interprétation formelle d'un pointeur.
Si vous lisez la section encore, vous vous rendrez compte que quelque chose comme, et herInt est aussi un pointeur. Maintenant que & herInt est un pointeur, vous pouvez déréférencer d'avoir la valeur pointée par l'entité, et herInt, qui est 5 dans ce cas. Ceci est ce qui se fait dans la troisième déclaration. Vous commencez avec l'opérateur de déréférencement, *, qui est suivie par l'entité, et herInt, entre parenthèses. Dans ce cas les parenthèses sont facultatifs. La troisième déclaration envoie la valeur de hisInt à la sortie.
Vous créez une référence par l'initialisation comme dans la deuxième déclaration dans le segment haut. Remarque: Vous ne pouvez pas séparer la déclaration de la référence et de la cession de l'objet pointé, en deux états différents, comme vous le faites avec des pointeurs. Pour autant que l'objet pointu est concerné, vous pouvez diviser la déclaration d'initialisation dans les états de
net