-
Une référence ne peut pas être assigné en dehors de sa création.
Une référence prend obligatoirement une valeur à sa création et ne peut pas être modifiée.
Donc ton this->myRef = anotherRef; est strictement impossible.
Peut-être pourrais-tu essayer un peu ? :calim2:
-
Attention, piège ! Il est exact qu'une référence ne peut pas être réassignée. En revanche, il est possible que le code this->myRef = anotherRef; compile et s'exécute, si l'objet pointé par myRef possède un opérateur d'affectation. Dans lequel cas, l'objet anotherRef sera copié dans myRef, mais myRef pointera toujours le même objet. Si la référence myRef est constante, ça ne marche plus car les opérateurs d'affectation ne sont pas const.
-
Effectivement, je n'étais pas conscient de ce truc.
Vive les pointeurs, ça évite ce genre de surprises. :mrgreen: