[eside-ghost] Guarreando con iterators en C++
Jon Valdés
juanval en gmail.com
Mie Ene 23 20:56:50 CET 2008
2008/1/23 Ruben Gonzalez (aka EthDra) <ethdra en telefonica.net>:
>
> Me temo que esta negro, sip, porque tienes un error de base: un iterator
> sin su vector original es como una caja llena de nitroglicerina, mejor no la
> muevas xD No puedes tener un iterator sin tener su vector a mano, no solo
> porque ya no podras hacer un iterator++ o volverlo al inicio, si no pq
> sencillamente ya no puedes saber si lo que apuntaba ese iterator existe o
> no.
Yap, hacía esa guarrada porque sé que si se llega a esa parte del
código, el vector tiene que seguir existiendo por narices, asi que no
me preocupaba eso
>Si almacenas o pasas un iterator, tendras que mandar con el su vector,
> porque sino, la unica operacion posible (aunque no del todo correcta) con
> ese iterator sera acceder a su contenido, y para eso, pasas el contenido
> directamente.
Al final es lo que he hecho, si. Ha resultado que encapsulando un poco
resultaba no ser demasiado complicado refactorizar todo para cambiar
esta guarrada y hacer algo un poco mas decente.
Gracias a todos por las respuestas :)
taluegooo
Más información sobre la lista de distribución eside-ghost