comment supprimer un élément d'un std::vector - C++ - Programmation
Marsh Posté le 04-01-2008 à 18:09:03
RFTM : http://www.sgi.com/tech/stl/Vector.html
sinon
Code :
|
ou pos ets un iterateur sur l'element à éliminer
Marsh Posté le 04-01-2008 à 18:13:17
Il y a ce site aussi qui est pas mal : http://www.cplusplus.com/reference [...] erase.html
Marsh Posté le 04-01-2008 à 18:14:14
ReplyMarsh Posté le 04-01-2008 à 18:15:16
ReplyMarsh Posté le 04-01-2008 à 18:19:28
dcsara a écrit : erase est définit avec le std::vector ??????????? |
Non, d'ailleurs il n'est pas dans la liste des méthodes dans le lien de Joel F, et ce n'est pas écrit "vector::erase" en gros caractères dans celui que j'ai fourni.
Marsh Posté le 04-01-2008 à 18:25:31
merci bcp .. j'ai lu le lien en diagonale .... lol
parcontre erase ... libère automatiquement l'espace mémoire qui a été alloué ??
Marsh Posté le 04-01-2008 à 18:26:22
C'est simple : lorsque tu ajoutes un élément au vector, est-ce que tu t'occupes de l'allocation mémoire qui va avec ?
Marsh Posté le 04-01-2008 à 18:27:01
ca depend de l'implantation. La seule garantie c'est d'appeler le destructeur de l'objet détruit. En général, les bonnes implantations ne libérent pas la mémoire tant que le vector lui même n'est pas détruit.
Marsh Posté le 04-01-2008 à 18:40:13
stp, peux m'expliquer encore plus .. j'ai pâs bien saisie ce que tu veux dire ... car dans mon cas je voudrais bien libérer de l'espace mémoire car mon vecteur est un vecteur de structure coté serveur et plusieur client devront se connecter à se serveur. Donc le serveur, va ajouter toutes informations des clients dans ce vecteur. et D'ou ma nécessité de liberer l'espace émoire de l'élément supprimer.
Peux tu stp me dire comment faire ?
merci
Marsh Posté le 04-01-2008 à 18:42:09
bon j'ai rien dit, c'est erase d'un vector pas d'une liste. Donc faire un erase fait bien ce que tu pense, ie, il détruit l'objet puis recolle les bout de vector de part et d'autres. Donc certainement 1 new + 2 copies + 1 delete sur le reste
Marsh Posté le 04-01-2008 à 17:55:27
svp, y a t'il quelqu'un qui peut me dire comment supprimer un élément d'un std::vector
mon vecteur est définit comme suit :
std::vector<int> vct;
Merci
Sara