Comment faire un classe

zmandar -  
loupius Messages postés 789 Statut Membre -
Bonjour,
svp je veux diviser ce code en deux :enlever struct personne et faire un classe personne et faire de constricteur et de destructeur et l 'utiliser dans le main

// personne1.cpp : définit le point d'entrée pour l'application console. 
// 

#include "stdafx.h" 

#include <fstream> 
#include <string> 
#include <iostream> 
using namespace std; 

struct personne { 
 int age; 
 string  sexe; 
 string nom; 
 string prenom; 
 void affiche(); 
  
}; 

void personne::affiche() { 
 cout << nom << " " << prenom << endl; 
 cout << " *  " << age << " age" << endl; 
 cout << " *  " << sexe << endl; 
} 


int main () { 
  FILE* test; // Ce nom ne doit pas être le même que celui du flux fstream 
    /* creation d' un fichier */ 
 int age; 
 string sexe; 
 string nom; 
 string prenom; 
 personne persA; 

cout << "entrer le prenom "<< endl; 
cin >>prenom; 
cout << "entrer le nom  "<< endl; 
cin>>nom ; 
cout << "entrer l 'age  "<< endl; 
cin >>age; 
cout << "entrer le sexe   "<< endl; 
cin>>sexe; 

persA.prenom=prenom; 
 persA.sexe=sexe; 
 persA.age=age; 
 persA.nom=nom; 

 ofstream fichier("C:\\test.text", ios::out | ios::app);  
    // ouverture en écriture avec effacement du fichier ouvert 

if(fichier) 
    { 
        fichier << persA.prenom;  
   fichier << " "<<persA.sexe ; 
    fichier <<" "<< persA.age ; 
     fichier <<" "<< persA.nom << endl; 
        cout << "ca a marché" << endl; // vérifier un coup dans la console. 
        fichier.close(); 
    } 

    else 
 {  cerr << "Impossible d'ouvrir le fichier !" << endl; 
    return 0; 

} 




  persA.affiche(); 

 return 0; 
} 

1 réponse

loupius Messages postés 789 Statut Membre 148
 
Il n'y a pas grand chose à changer, par exemple:
  ...
struct personne {
  personne(int a, string s, string n, string p)
    : age(a), sexe(s), nom(n), prenom(p) {} 
  int    age;
  string sexe;
  string nom;
  string prenom;
  void affiche();
 };

  ...

int main()
{
  personne persA(22, "f", "Abefijopuv", "Marie");
  ofstream fichier("C:\\test.text", ios::out | ios::app);
  ...
}
Je ne suis pas sûr que 'ofstream' efface le fichier ouvert.
Bonne continuation.
0
zmandar
 
bonjour
fichier.h je le fait comme ca est ce que ce juste svp ???

#ifndef PERSONNE_H
#define  PERSONNE_H
# include <iostream>
using namespace std ;
classe personne {
public :
	personne(int a, string s, string n, string p);
	 : age(a), sexe(s), nom(n), prenom(p) {} 

	 int get_age();
	 	 string get_nom();
		 string get_prenom();
		 string get_sexe();
		void set_age(int age );
		  void set_nom(string nom);
void set_sexe(string sexe);
 void set_prenom(string prenom);

private :
int a;
string n;
string s;
string p;
};

0
loupius Messages postés 789 Statut Membre 148
 
Et bien ça me paraît pas mal, mis à part:
  private:
    int age;
    string nom;
    string sexe;
    string prenom;
Bonne après-midi.
0
zmandar
 
comment implémenter le constructeur dans le fichier.cpp ??
personne(int a, string s, string n, string p)
0
loupius Messages postés 789 Statut Membre 148
 
Comme une autre méthode de la classe:
personne::personne(int a, string s, string n, string p);
	 : age(a), sexe(s), nom(n), prenom(p)
{
  ...
}
0
zmandar
 
moi je veux implémenter l 'opérateur algébrique différence entre deux relation (sql) en utilisant le c++
svp est ce que vous pouvez me donné une idée
je utilise un classe relation
et classe attribut(nom att,type att,longeur att )
et aussi en utilisant le fichier
svp si vous avez une idéé aide moi
0