Hola, a todos,estoy empezando a entender la libreria STL,y tengo una duda,cuando (en el codigo que os presento) ,cuando hago ve.clear,que hace realmente este metodo?, deja el vector asi { }?, porque cuando voy a imprimir para probar si hay algo..no se mete ni el bucle for...
Solo es esa duda,aqui presento el código:
#include<vector>
#include<string>
#include<iostream>
using namespace std;
int main(){
vector<int>ve;
//voy introduciendo en el vector
for(int i=0;i<6;i++){
ve.push_back(i);
}
vector<int>::iterator iter;
//muestro el primer elemento.
cout<<*ve.begin()<<endl;
//iter=ve.begin();
//saco por pantalla
for(iter=ve.begin();iter!=ve.end();iter++){
cout<<*iter<<" ";
}
//ahora vamos a copiar el vector ve en el vector vn
vector<int>vn;
//copio en el vector vn
for(iter=ve.begin();iter!=ve.end();iter++){
vn.push_back(*iter);
}
ve.clear(); //yo pienso que limpio el espacio
//¿aunque este vacio no se tiene que meter?
for(iter=ve.begin();iter!=ve.end();iter++){
cout<<*iter<<"z ";
}
//muestra el vector vn
for(iter=vn.begin();iter!=vn.end();iter++){
cout<<*iter<<" ";
}
}