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

  FORUM HardWare.fr
  Programmation
  C++

  back_insertor

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

back_insertor

n°1891962
Glock 17Pr​o
Posté le 06-06-2009 à 15:41:58  profilanswer
 

pour faire l'algo ci desouss, je ne peux pas utiliser back_insertor + functor éventuellement, j'avoue que je maitrîse par trop cette bête là:

 
Code :
  1. string s1("GUH=10;KI=98;BH=78**************" );
  2. string s2;
  3. string::iterator itE(s1.begin());
  4. string::iterator itB(itE);
  5. int n = s1.find_last_of("=" )+2;
  6. s2.resize(n);
  7. advance(itE,n);
  8. copy(itB,itE,s2.begin());


Message édité par Glock 17Pro le 06-06-2009 à 15:42:37
mood
Publicité
Posté le 06-06-2009 à 15:41:58  profilanswer
 

n°1891965
Joel F
Real men use unique_ptr
Posté le 06-06-2009 à 15:46:16  profilanswer
 

c'est quoi le pb ?

n°1891969
Glock 17Pr​o
Posté le 06-06-2009 à 16:02:11  profilanswer
 

savoir si cest pas possible de faire ça en une ligne avec un trasnform +back_insertor ou je sais pas quoi

n°1891989
Glock 17Pr​o
Posté le 06-06-2009 à 17:11:33  profilanswer
 

qui dit mieux ?

 
Code :
  1. bool isaStar(char c){return c=='*';}
  2. string s2;
  3. copy(s1.begin(),remove_if(s1.begin(),s1.end(),isaStar),std::back_insert_iterator<string>(s2));


Message édité par Glock 17Pro le 06-06-2009 à 17:13:18
n°1891992
Joel F
Real men use unique_ptr
Posté le 06-06-2009 à 17:24:31  profilanswer
 

Sinon mates du coté de boost::string algo
http://www.boost.org/doc/libs/1_39 [...] usage.html
 
genre copy(trim()) etc

n°1891996
Glock 17Pr​o
Posté le 06-06-2009 à 17:36:27  profilanswer
 

yes et avec boost lambda c'est encore meilleur plus besoin de isastar un petit  

 

copy(s1.begin(),  remove_if(s1.begin(),s1.end(),_1 =='*' ),  std::back_insert_iterator<string>(s2));

  

et ça roule.1 ligne de code ! C'est vraiment puissant ce bordel


Message édité par Glock 17Pro le 06-06-2009 à 17:37:16
n°1891998
Glock 17Pr​o
Posté le 06-06-2009 à 17:40:22  profilanswer
 

Joel F a écrit :

Sinon mates du coté de boost::string algo
http://www.boost.org/doc/libs/1_39 [...] usage.html
 
genre copy(trim()) etc


ok thanks

n°1892170
Glock 17Pr​o
Posté le 07-06-2009 à 15:17:50  profilanswer
 

niveau perf la version une ligne est à chier...

n°1892185
Joel F
Real men use unique_ptr
Posté le 07-06-2009 à 16:18:53  profilanswer
 

bah faut faire du in-place je pense. Sinno tu passes ta vie à faire des copies

n°1892200
Glock 17Pr​o
Posté le 07-06-2009 à 17:47:44  profilanswer
 

du in-place cad ?

mood
Publicité
Posté le 07-06-2009 à 17:47:44  profilanswer
 

n°1892201
Glock 17Pr​o
Posté le 07-06-2009 à 18:01:40  profilanswer
 

remove_copy_if que j'avais zappé est un peu plus rapide

n°1892205
Glock 17Pr​o
Posté le 07-06-2009 à 18:09:14  profilanswer
 

c'est fou la diférence de perf entre la première version, et le reste


Message édité par Glock 17Pro le 07-06-2009 à 18:09:23

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

  back_insertor

 

Sujets relatifs
joomla back officePush_back copie?
Recharger la page quand l'utilisateur appuie sur le bouton "back"Interface jeu de dames (is back)
BACK OFFICE SITE FULL FLASHrecharger une page après un back
session_destroy + back = session active ???[javascript/html/php]Problème Tableau html / Back IE
javascript:history.back et imageback et refresh
Plus de sujets relatifs à : back_insertor


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