Je ne comprend pas trop ce que tu veux dire.
Il y a plus simple : on sait qu'il faut lire de "droite à gauche".Mais en appliquant ma méthodologie, ça devient plus simple.
Au pire, on test et le compilateur nous criera dessus (un "pointeur sur une référence" n'existe pas).
HS. Par contre là où j'hésite toujours le temps c'est pour les pointeurs sur un tableau et tableau de pointeurs .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 int * tab[] ; // tableau de pointeurs sur int int (* tab)[8] ; // pointeur sur un tableau de int int * (tab[]); // tableau de pointeurs sur intJe ne suis pas du tout d'accord.Ensuite concernant le const, je suis d'avis de le placer à droite de ce que l'on veut const. ça évite les confusion et donne des erreurs plus explicite:
L'habitude:
ne nous informe pas vraiment sur quoi est const, le pointeur ou les variable contenu dans le pointeur?
Code : Sélectionner tout - Visualiser dans une fenêtre à part const int * tableau;
Contrairement aux notations:
qui indique que les int sont constant mais pas le pointeur
Code : Sélectionner tout - Visualiser dans une fenêtre à part int const * tableau
Dans le premier cas const int *, const est proche de "int", je n'ai jamais vu un débutant avoir une confusion là-dessus.
De même pour int * const, le const est proche de "*".
Par contre, pour int const *, le const porte sur quoi? à droite ou à gauche ?
Je ne suis pas sûr que si on pose la question, tout le monde répondra correctement, moi le premier .
Partager