ffelagund escribió:Te respondo brevemente: Usa la STL siempre que puedas. El codigo que has puesto no es en absoluto dificil de leer, pero si quieres hacerlo un poco mejor, usa typedefs para las colecciones, así mañana cambias de vector a lista y el codigo no cambia nada. Yo llevo muchos años programando en C++ (profesionalmente) y te aseguro que la STL, paral 90% de los casos es suficientemente rapida, si la sabes usars bien (por ejemplo es mas barato añadir un elemento a una lista que a un vector, como cosa básica)
Por cierto, en vez de elemento++, usa ++elemento. Ahorras una variable temporal creada por el compilador, con su consiguiente carga en su creacion, copia y asignacion, y para un iterador, eso puede ser significativo.
Ejemplo:
typedef std::vector< vertex > TVertexCollection;
.
.
.
TVertexCollection vertices;
.
.
.
TVertexCollection::iterator iter = vertices.begin();
for(; iter != vertices.end(); ++iter )
{
Foo();
}
P.D: por productividad, la mayor máxima de la informatica es no reinventar la rueda. Si hay una libreria que hace algo, y sabes que lo hace bien, y la puedes usar (ya sea por licencia, precio, etc), ÙSALA.
En mi proyecto actual, usamos librerias para cargar/salvar imagenes, para generacion de topologias de mallas, para inicializar las extensiones de opengl, usamos la stl, usamos boost, usamos .NET para widgets. Simplemente sin stl ni boost, nuestro proyecto estaría en una fase muchisimo menos avanzada.
lo de usar el typedef y lo del ++iterator tambien lo sabía simplemente quería reducir la dificultad del ejemplo. Yo creo desde mi punto de vista que se entiende de maravilla pero la gente no le gusta aprender a usar cosas de otros... yo era así cuando empecé la universidad. Pero ahora pienso que si tengo una librería a mano que me viene bien porque no la tengo que gastar?
tu proyecto tiene que ser interesante, yo estuve una temporada haciendo cosas de gráficos pero royo amateur... no se llega a saber tanto pero me lo pasaba bien jejeje. buscais gente?

es coña ahora mismo no estoy interesado en curro.
Pero bueno gracias por tu respuesta seguramente les enseñe las respuestas de este foro en el trabajo a ver si de una vez por todas no me hacen programar con las manos atadas xDDD.