en un point).
En définitive, on obtient les résultats suivants :
$$ construction point : 0 0
$$ construction point : 2 4
$$ construction point : 6 0
$$ construction point : 0 0
Coordonnées : 8 4
$$ construction point : 6 0
$$ construction point : 0 0
Coordonnées : 2 4
b. En revanche, si l’opérateur + avait été surdéfini par une fonction membre, la seconde
instruction d’affectation aurait été rejetée à la compilation ; en effet, elle aurait été
interprétée comme :
.operator + (b)
On voit ici que seule la fonction amie permet de traiter de façon identique les deux
opérandes d’un opérateur binaire, notamment en ce qui concerne les possibilités de
conversions implicites.
c. La transmission par référence impose que l’argument effectif d’une fonction soit du
même type que l’argument muet correspondant, aucune conversion n’étant alors
possible. Les affectations 1 et 2 seront rejetées en compilation.
d. La présence de const permet au compilateur de transmettre à la fonction (operator +) un
objet temporaire obtenu par d’éventuelles conversions des arguments effectifs.
Toutes les affectations redeviennent correctes.
237
Précédent

- 238/398

Suivant