Bonjour,
Je n'arrive pas à remplir ma liste (est-ce un problème au niveau de la sauvegarde ou du remplissage ?)
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68 #pragma once #include<iostream> #include<string> using namespace std; class reseau { string adr_internet; string nom; string nomsra; int nseriepa; bool ra,pa; public: reseau(string a="",string b="",string c="",int d=0,bool e=false,bool f=false){adr_internet=a;nom=b;nomsra=c;nseriepa=d;ra=e;pa=f;}; ~reseau(){}; void saisir(){ unsigned int t,x; cout<<"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"<<endl; cout<<"Donner l'adresse Internet du reseau :"<<endl; cin>>adr_internet; cout<<"Donner le nom du reseau :"<<endl; cin>>nom; do { cout<<"Voulez vous associe un peripherique a ce reseau ? : (non : 0 , oui : 1) "<<endl; cin>>t;} while((t!=0)&&(t!=1)); if (t==1){ cout<<"Donner le Nserie du peripherique associe :"<<endl; cin>>nseriepa; pa=true; } else pa=false; do { cout<<"Voulez vous associe un sous-reseau a ce reseau ? : (non : 0 , oui : 1) "<<endl; cin>>x;} while((x!=0)&&(x!=1)); if (x==1){ cout<<"Donner le sous-reseau associe :"<<endl; cin>>nomsra; ra=true;} else ra=false; } void affiche(){ cout<<"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"<<endl; cout<<"Nom du reseau : "<<nom<<" Adresse Internet du reseau : "<<adr_internet<<endl; if (pa==true){ cout<<"Nserie du peripherique associe : "<<nseriepa<<endl;} if (ra==true){cout<<" Sous-reseau associe : "<<nomsra<<endl; } cout<<"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"<<endl; } string getadresse_in(){ return(this->adr_internet);} string get_nom(){ return(this->nom);} string get_nom_sra(){ return(this->nomsra);} int get_nspa(){ return(this->nseriepa);} bool get_ra(){ return(this->ra);} bool get_pa(){ return(this->pa);} };
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73 #pragma once #include<iostream> #include<string> #include"reseau.h" #include<vector> #include<fstream> using namespace std; class listereseaux { vector <reseau*> lreseaux; unsigned int max; public : listereseaux(int m=20):max(m){} void ajouter(reseau* r){ if((lreseaux.size()<max)&&(recherche(r->getadresse_in())==(-1))) lreseaux.push_back(r); else cout<<"Plein ou reseaux existant!!"<<endl; } reseau* supprimer(string adr) {int position=recherche(adr); if(position!=(-1)) {reseau* tmp=lreseaux[position]; lreseaux.erase(lreseaux.begin()+position);return tmp; } else cout<<"Ce reseau n'existe pas dans la liste !!"<<endl; return NULL; } int recherche (string adr) { for(unsigned int i=0;i<lreseaux.size();i++) {if(lreseaux[i]->getadresse_in()==adr)return i; } return(-1); } void affiche(){ for(unsigned int i=0;i<lreseaux.size();i++) { lreseaux[i]->affiche(); } } void sauvegard_d_donnees() { ofstream f; f.open("lreseau.txt"); f.clear(); for(unsigned int i=0;i<lreseaux.size();i++) { f<<lreseaux[i]->getadresse_in()<<lreseaux[i]->get_nom()<<lreseaux[i]->get_ra()<<lreseaux[i]->get_pa()<<lreseaux[i]->get_nom_sra()<<lreseaux[i]->get_nspa()<<"\n"; } f.close(); } void remplir_liste() { ifstream f; string adr_i,nom,nomsa; int npa; bool ra,pa; f.open("reseau.txt"); while(f.good()){ f>>adr_i>>nom>>ra>>pa>>ra>>nomsa>>npa; reseau r(adr_i,nom,nomsa,npa,ra,pa); lreseaux.push_back(&r); } f.close(); } };Merci d'avance.
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48 // le main #pragma once #include<iostream> #include<string> #include"listereseaux.h" using namespace std; void main() { listereseaux l; /*reseau r1,r2,r3; string adr; r1.saisir(); r2.saisir(); r3.saisir(); //r1.affiche(); //r2.affiche(); //r3.affiche(); l.ajouter(&r1); l.ajouter(&r2); l.affiche(); cout<<"debut sauvegarde"<<endl; l.sauvegard_d_donnees(); cout<<"Fin sauvegarde"<<endl; l.ajouter(&r3); */ cout<<"debut remplissage liste"<<endl; l.remplir_liste(); cout<<"fin remplissage liste"<<endl; l.affiche(); system("pause"); }
Partager