Dans vos propres études (seul ou en classe), avez-vous eu un moment "ah ah" où vous avez finalement compris les indicateurs? Avez-vous une explication que vous utilisez pour les programmeurs débutants qui semble particulièrement efficace?
Par exemple, lorsque les débutants rencontrent pour la première fois des pointeurs en C, ils peuvent simplement ajouter &
s et *
s jusqu'à ce qu'il compile (comme je l'avais déjà fait moi-même). C’est peut-être une photo, ou un exemple vraiment bien motivé, qui a fait en sorte que les pointeurs "cliquent" pour vous ou votre élève. Qu'est-ce que c'était et qu'avez-vous essayé avant que cela ne semble pas fonctionner? Des sujets ont-ils été prérequis (par exemple, des structures ou des tableaux)?
En d'autres termes, que fallait-il pour comprendre le sens de &
s et *
quand les utiliser avec confiance? Apprendre la syntaxe et la terminologie ou les cas d'utilisation ne suffit pas, l'idée doit être intériorisée à un moment donné.
Mise à jour: j'aime beaucoup les réponses jusqu'à présent; s'il vous plaît, continuez. Il y a beaucoup de bonnes perspectives ici, mais je pense que beaucoup sont de bonnes explications / slogans pour nous-mêmes après que nous ayons intériorisé le concept. Je cherche les contextes détaillés et les circonstances quand cela vous est apparu.
Par exemple:
Je n'ai que quelque peu compris les pointeurs syntaxiquement en C. J'ai entendu deux de mes amis expliquer des pointeurs à un autre ami, qui a demandé pourquoi a
struct
était passé avec un pointeur. Le premier ami a parlé de la nécessité de le référencer et de le modifier, mais il ne s'agissait que d'un bref commentaire de l'autre ami qui m'a frappé: "C'est aussi plus efficace." Passer 4 octets au lieu de 16 octets était le dernier changement conceptuel dont j'avais besoin.