• Sábado 14 de Diciembre de 2024, 19:56

Autor Tema:  duda utilizando la libreria STL  (Leído 936 veces)

pacorubio77

  • Miembro MUY activo
  • ***
  • Mensajes: 207
    • Ver Perfil
duda utilizando la libreria STL
« en: Viernes 17 de Octubre de 2008, 12:49 »
0
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:

Código: Text
  1. #include<vector>
  2. #include<string>
  3. #include<iostream>
  4.  
  5. using namespace std;
  6.  
  7.  
  8. int main(){
  9.  
  10. vector<int>ve;
  11. //voy introduciendo en el vector
  12.     for(int i=0;i<6;i++){
  13.  
  14.         ve.push_back(i);
  15.     }
  16. vector<int>::iterator iter;
  17.  
  18.     //muestro el primer elemento.
  19.     cout<<*ve.begin()<<endl;
  20.     //iter=ve.begin();
  21.    
  22.     //saco por pantalla
  23.     for(iter=ve.begin();iter!=ve.end();iter++){
  24.         cout<<*iter<<" ";
  25.     }
  26.  
  27. //ahora vamos a copiar el vector ve en el vector vn
  28.  
  29. vector<int>vn;
  30.     //copio en el vector vn
  31.     for(iter=ve.begin();iter!=ve.end();iter++){
  32.         vn.push_back(*iter);
  33.     }
  34.  
  35.  
  36. ve.clear(); //yo pienso que limpio el espacio
  37.  
  38. //¿aunque este vacio no se tiene que meter?
  39. for(iter=ve.begin();iter!=ve.end();iter++){
  40.         cout<<*iter<<"z ";
  41.     }
  42. //muestra el vector vn
  43. for(iter=vn.begin();iter!=vn.end();iter++){
  44.         cout<<*iter<<" ";
  45.     }
  46.  
  47. }
  48.  

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: duda utilizando la libreria STL
« Respuesta #1 en: Viernes 17 de Octubre de 2008, 13:01 »
0
Cuando llamas a clear hace lo que su nombre indica y borra todos los elementos que hubiera en el vector, por lo tanto begin() y end() devuelven lo mismo y no entra en el bucle.

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.