Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
644 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Vecteur: supprimer un élément

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Vecteur: supprimer un élément

n°959720
casafa
Posté le 23-01-2005 à 10:06:56  profilanswer
 

Bonjour,
 
Je début avec les vecteurs et je ne trouve pas la fonction qui permet de supprimer un élément du vector qui se trouve en X ième position.
 
Merci d'avance...


Message édité par casafa le 23-01-2005 à 10:07:08
mood
Publicité
Posté le 23-01-2005 à 10:06:56  profilanswer
 

n°959738
didier1809
${citation_perso}
Posté le 23-01-2005 à 10:21:32  profilanswer
 

tonvecteur.erase
 
http://www.codeproject.com/vcpp/stl/std_vector.asp
 
et meme :
 
Example
 

Code :
  1. // vector_erase.cpp
  2. // compile with: /EHsc
  3. #include <vector>
  4. #include <iostream>
  5. int main( )
  6. {
  7.    using namespace std; 
  8.    vector <int> v1;
  9.    vector <int>::iterator Iter;
  10.  
  11.    v1.push_back( 10 );
  12.    v1.push_back( 20 );
  13.    v1.push_back( 30 );
  14.    v1.push_back( 40 );
  15.    v1.push_back( 50 );
  16.    cout << "v1 =" ;
  17.    for ( Iter = v1.begin( ) ; Iter != v1.end( ) ; Iter++ )
  18.       cout << " " << *Iter;
  19.    cout << endl;
  20.    v1.erase( v1.begin( ) );
  21.    cout << "v1 =";
  22.    for ( Iter = v1.begin( ) ; Iter != v1.end( ) ; Iter++ )
  23.       cout << " " << *Iter;
  24.    cout << endl;
  25.    v1.erase( v1.begin( ) + 1, v1.begin( ) + 3 );
  26.    cout << "v1 =";
  27.    for ( Iter = v1.begin( ) ; Iter != v1.end( ) ; Iter++ )
  28.       cout << " " << *Iter;
  29.    cout << endl;
  30. }


 
Output
 
v1 = 10 20 30 40 50
v1 = 20 30 40 50
v1 = 20 50
 
tiré de la msdn


Message édité par didier1809 le 23-01-2005 à 10:22:52

---------------
.
n°959819
++fab
victime du syndrome IH
Posté le 23-01-2005 à 12:20:40  profilanswer
 

didier1809 a écrit :


 
 

Code :
  1. #include <vector>
  2. #include <iostream>
  3. int main( )
  4. {
  5.    using namespace std; 
  6.    vector <int> v1;
  7.    vector <int>::iterator Iter;
  8.  
  9.    v1.push_back( 10 );
  10.    v1.push_back( 20 );
  11.    v1.push_back( 30 );
  12.    v1.push_back( 40 );
  13.    v1.push_back( 50 );
  14.    cout << "v1 =" ;
  15.    for ( Iter = v1.begin( ) ; Iter != v1.end( ) ; Iter++ )
  16.       cout << " " << *Iter;
  17.    cout << endl;
  18.    v1.erase( v1.begin( ) );
  19.    cout << "v1 =";
  20.    for ( Iter = v1.begin( ) ; Iter != v1.end( ) ; Iter++ )
  21.       cout << " " << *Iter;
  22.    cout << endl;
  23.    v1.erase( v1.begin( ) + 1, v1.begin( ) + 3 );
  24.    cout << "v1 =";
  25.    for ( Iter = v1.begin( ) ; Iter != v1.end( ) ; Iter++ )
  26.       cout << " " << *Iter;
  27.    cout << endl;
  28. }


 
tiré de la msdn


 
Faut juste etre conscient que supprimer un elément en Xieme position n'est pas une opération efficace pour vector (cf le commentaire explicite dans les sources de vector).  
 
pour un extrait de la msdn, ça me parait bien léger de déclarer non const l'itérateur :o  
idem pour la post-incrémentation de l'itérateur  :o  
et on peut faire plus concis et meilleur ...

n°960015
didier1809
${citation_perso}
Posté le 23-01-2005 à 16:31:37  profilanswer
 

++fab a écrit :

Faut juste etre conscient que supprimer un elément en Xieme position n'est pas une opération efficace pour vector (cf le commentaire explicite dans les sources de vector).  
 
pour un extrait de la msdn, ça me parait bien léger de déclarer non const l'itérateur :o  
idem pour la post-incrémentation de l'itérateur  :o  
et on peut faire plus concis et meilleur ...


 
ca, miscosoft n'a peut etre pas envie de se casser le cu* pour ca  :D  
 
une liste serai splus adaptée amha  :o


---------------
.

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Vecteur: supprimer un élément

 

Sujets relatifs
[Access]supprimer donnée dans une table et archiver dans une autresupprimer un objet d'un array [resolu]
supprimer la plus petite valeurN ème plus grand élément d'un conteneur sequentiel avec la STD lib
[Java] Utilisation d'un vecteur d'objetssuppression d'un élément dans un vector
Supprimer un dossier "vide ou non vide"supprimer une variable d'une variable, est-ce possible ?
Supprimer un fichier uploadé avec aspsmart uploadSupprimer une ligne d'un fichier
Plus de sujets relatifs à : Vecteur: supprimer un élément


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR