Essaie #include <set> pour voir
Et ce sont des includes, pas des bibliothèques![]()
Essaie #include <set> pour voir
Et ce sont des includes, pas des bibliothèques![]()
ah oui dsl
Je croit n'avoir rien oublié
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 #include <iostream> #include <fstream> #include <set> #include <string> #include <algorithm> #include <iterator>
lors de l'appel de la fonction
je doit faire comment ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 std::ifstream fin("resultat.txt"); std::ifstream fout("finaly.txt"); supprimer_redondance(fin, fout);
Tu doit faire
essais de comprendre le code. sinon cela ne sert a rien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 std::ifstream fin("resultat.txt"); std::ofstream fout("finaly.txt"); supprimer_redondance(fin, fout);
Mais tu as bien fait, ça permet de montrer au grand nombre des techniques originales.
Je n'imaginais pas que ce probleme pouvait se resoudre en si peu de lignes (plus d'includes que de code).
Tu passes par "effective stl" pour la découvrir ou tu fouines simplement dans la doc ?
c'est une nouvelle notions pour moi ,
et franchement j'ai rien compris de ton code![]()
voici une bonne introduction
http://r0d.developpez.com/articles/algos-stl/
Nhésite pas à demander ce que tu ne comprend pas
et pourquoi pas tu commence par me montrer comment faire l'appel a ta fonction afin de voir l'utilité
C'est pour intéresser les gens.
je veux dire que tu ne m'as pas montré comment faire l'appel a la fonction
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 std::ifstream fin("resultat.txt"); std::ofstream fout("finaly.txt"); supprimer_redondance(fin, fout);
tu ne m'as pas montré ou es l'erreur ici
si.
ouai c'est vrai il n'y as qu'une lettre de différent.
dsl
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 std::ifstream fin("resultat.txt"); std::ofstream fout("finaly.txt"); supprimer_redondance(fin, fout);
Dans la Faq aussi
http://cpp.developpez.com/faq/cpp/?p...ream_iterators
tu peut ecrit la fonction comme ca aussi :
peut etre plus facile a comprendre
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 void supprimer_redondance(std::ifstream &fin, std::ofstream &fout) { std::set<std::string> mySet; //lecture du fichier mot à mot et insertion dans le set pour enlever les doublons mySet.insert(std::istream_iterator<std::string>(fin), std::istream_iterator<std::string>()); //ecriture dans le fichier de sortie. Les doublons on disparue!!! std::copy(mySet.begin(), mySet.end(),std::ostream_iterator<std::string>(fout,"\n")); //pour vider le buffer fout.flush(); }![]()
Je comprend pas ta question... tu n'arrive pas as utiliser le code?
voici un main
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 #include <iostream> #include <fstream> #include <set> #include <string> #include <algorithm> #include <iterator> void supprimer_redondance(std::istream &fin, std::ostream &fout) { std::set<std::string> mySet; //lecture du fichier mot à mot et insertion dans le set pour enlever les doublons mySet.insert(std::istream_iterator<std::string>(fin), std::istream_iterator<std::string>()); //ecriture dans le fichier de sortie. Les doublons on disparue!!! std::copy(mySet.begin(), mySet.end(),std::ostream_iterator<std::string>(fout,"\n")); //pour vider le buffer fout.flush(); } int main() { std::ifstream fin("c:/essai.txt"); std::ofstream fout("c:/essaiout.txt"); //le resultat est ecrit dans le fichier supprimer_redondance(fin,fout); //le resultat est ecrit dans la console supprimer_redondance(fin,std::cout); return 0; }
alors ça...
http://www.davethehat.com/articles/eff_stl.htm
je ne pensais pas retrouver le même code
c'est de ca que tu me parlé ou du bouquin?
Ah c'est marrant, non je parlais juste du bouquin de Meyers http://www.amazon.com/Effective-STL-.../dp/0201749629
Je m'apprête à le lire.
merci beaucoups Mongaulois pour ta solutions , maintenant je vais commencer a essayé de comprendre ta fonction![]()
il l'explique bien ici
http://www.davethehat.com/articles/eff_stl.htm
Partager