Donc, se donner un objet représentant "une position dans une séquence" sur lequel il soit possible de faire les opérations habituelles "avancer à l'élément suivant" ou "obtenir le contenu de l'élément actuel" comme si on avait affaire à un "bon vieux pointeur dans un tableau C", c'était l'idée de std::{whatever}::iterator.
Si c'est sympa à la base (surtout pour ceux qui n'ont jamais fait de programmation fonctionnelle et pour qui les manipulations de listes à coup de grep ou map semblent occultes), en revanche, ça donne parfois des effets troublants dans la mesure où l'itérateur risque (s'il y a la moindre faille dans votre vigilance) de parcourir un objet qui n'existe plus.
Du moins, c'est l'explication la plus probable des fantaisies que j'observe dans mon éditeur d'animations.
this is the right place for quickstuff
No comments:
Post a Comment