Comment puis-je passer un pointeur ( Object *ob) vers une fonction qui est le prototype void foo(Object &)?
Comment puis-je passer un pointeur ( Object *ob) vers une fonction qui est le prototype void foo(Object &)?
Réponses:
Appelez ça comme ça:
foo(*ob);
Notez qu'il n'y a pas de diffusion en cours ici, comme suggéré dans le titre de votre question. Tout ce que nous avons fait est de dé-référencer le pointeur vers l'objet que nous passons ensuite à la fonction.
obou convertit-il simplement (s'il n'est pas converti) le pointeur en référence? Et si obc'était nullptr?
foo(*ob);
Vous n'avez pas besoin de le convertir car il s'agit du même type d'objet, il vous suffit de le déréférencer.