[C++] La fonction membre erase() de vector s'utilise comment?

La fonction membre erase() de vector s'utilise comment? [C++] - Programmation

Marsh Posté le 07-03-2002 à 15:19:48    

Que passe-t-on à la fonction erase() d'un vector? On donne l'indice de l'élément qu'on veut enlever ou l'adresse de cet élément?

Reply

Marsh Posté le 07-03-2002 à 15:19:48   

Reply

Marsh Posté le 07-03-2002 à 16:06:14    

Pour autant que je me souviennes, tu as le choix entre:
 - enlever un élement (dans ce cas, tu mets un itérateur)
 - enlever une liste (dans ce cas, le premier paramètre est l'itérateur du premier élément, et le deuxième, celui du dernier élement à virer).
 
Mais y a pas tout ca dans la MSDN?


---------------
Si t'es pas net, reste a la buvette
Reply

Marsh Posté le 07-03-2002 à 16:36:16    

Alload a écrit a écrit :

Que passe-t-on à la fonction erase() d'un vector? On donne l'indice de l'élément qu'on veut enlever ou l'adresse de cet élément?  




La fonction erase prends effectivement un iterateur, iterateur que tu pourra obtenir par des methodes comme begin, end, ou find par exemple...
 
Ceci dit, tu ne devrais pas avoir besoin d'un erase sur un veteur, sauf exceptionnellement, les performances de cette methodes etant particulierement desastreuses...
 
si c'est le dernier element du vecteur que tu veux eliminer il y a pop_back(), qui est plus efficace que erase()...
 
Si tu veux ajouter et elever des elements au milieux essaie plutot une list...

Reply

Marsh Posté le 07-03-2002 à 18:51:33    

Simple question, qu'est-ce qu'un itérateur? :D

Reply

Marsh Posté le 07-03-2002 à 19:42:12    

C'est un objet qui te permet de parcourir simplement un ensemble d'objets.
Typiquement:

Code :
  1. for(Iterator i = ensemble.begin(); i != ensemble.end(); i++)
  2. {
  3.   // des trucs
  4.   // *i désigne l'objet en cours de parcours
  5. }


 
http://www.sgi.com/tech/stl/stl_introduction.html

 

[jfdsdjhfuetppo]--Message édité par Krueger--[/jfdsdjhfuetppo]


---------------
"Colère et intolérance sont les ennemis d'une bonne compréhension." Gandhi
Reply

Marsh Posté le 07-03-2002 à 20:18:23    

Alload a écrit a écrit :

Simple question, qu'est-ce qu'un itérateur? :D  




Tu peux voir ca comme un pointeur, en tous cas ca s'utilise de la meme maniere...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed