Diferencia entre revisiones de «Programación en C++/Librería Estándar de Plantillas\Iteradores»

Contenido eliminado Contenido añadido
El lobo (discusión | contribs.)
El lobo (discusión | contribs.)
Línea 152:
return EXIT_SUCCESS;
}</source>
 
== Iteradores reversos ==
La STL de C++ permite que los elementos de las listas creadas puedan ser navegados en orden "normal", es decir desde el primero hasta el último de los elementos agregados a la lista, y para dichas tareas se usa un iterador normal. También, los elementos pueden navegarse en orden "reverso" y en tales casos se usa un iterador en reverso ( '''reverse_iterator''' ). Un ejemplo de reverse_iterator se muestra en el siguiente programa.
 
<source lang=cpp>
// Demostracion del uso de iteradores reversos
// probado en: Dev-C++ 4.9.9.2
#include <cstdlib>
#include <iostream>
#include <vector>
using namespace std;
int test()
{
list<char> v;
 
for (int x = 'A'; x <= 'Z'; x++) v.push_back(x);
cout << endl;
 
out << "orden original" << endl;
// creamos un iterator normal
list<char>::iterator i = v.begin();
while(i != v.end() )
{
cout << *i++ << " ";
}
cout << endl;
 
cout << "orden inverso" << endl;
// creamos un iterator reverso
list<char>::reverse_iterator ri = v.rbegin();
while(ri != v.rend() )
{
cout << *ri++ << " ";
}
cout << endl;
return 0;
}
 
 
int main(int argc, char *argv[])
{
test();
system("PAUSE");
return EXIT_SUCCESS;
}
</source>
 
</div>