Envoyé par
leternel
Je suis très sûr pour celui-là.
On ne peut pas, "parce que" tu ne pourrais pas spécifier les arguments de la fonction. l'operateur attendent certes une variables à gauche, mais un identifieur lexical à droite (un nom de membre, pour être précis).
La raison est que le variable->membre est implémenté par récurrence:
si variable est un pointeur, retourner (*variable).membre.
si variable est n'importe-quoi d'autre, retourner (variable.operator->())->membre
En fait, j'en ai omis un autre, le déréférencement de pointeur membre ".*" (je ne suis sur ni du nom, ni de l'usage)
Les cinq que j'ai appris sont ?:, ., .*, sizeof et ::.