Documente Academic
Documente Profesional
Documente Cultură
Classes
Droit daccs aux donnes Dfinition des fonctions Instances de classe (appel dobjet)
Hritage
Organisation du programme
Classe : Syntaxe
Une classe en C++ est dfinie comme suit :
//nomination de la classe
Exemple
class voiture { private : char marque[20]; int nbre_places; float kilometrage; public:
void deplacement(float x); void capacite(int i); };
ordinaires
Les fonctions peuvent accder aux donnes sans les passer en paramtre (Cas de la programmation classique).
La fonction est indexe par le nom de sa classe suivi de loprateur de porte (::)
Syntaxe :
Exemple
void Class voiture { voiture::deplacement(float x) private : { kilometrage +=x; char marque[20]; } int nbre_places; float kilometrage;
public: void voiture::capacite(int i) void deplacement(float x); { void capacite(int i); nbre_places +=i; }; }
Hritage
Lhritage permet de dfinir une nouvelle classe partir dune classe existante. Les donnes et les fonctions de la classe existante sont automatiquement hrites par la nouvelle classe.
Syntaxe :
class nouvelle_classe : mode_derivation ancienne_classe { };
Exemple
class camion::chargement(float x) void camion : public voiture { { private x; Poids = : float poids; } char marchandise[20]; public:
void chargement(float x); void camion::nom_marchandise() void nom_marchandise(); { }; Puts(saisir le nom de la marchandise); Gets(marchandise); }
Organisation du programme
Universit
Facult
cole
Licence
Master
Ingnieur
Master
Bibliothque
Organisation du programme
Facult
noms notes
Licence
noms notes prof
noms
// classe licence
void licence :: saisie_notes() { for(int i=0;i<3;i++) { cout<<"saisir la note de l'etudiant "<<noms[i]<<" "; cin>>notes[i]; } }
notes
Programme principal
#include <stdio.h> #include <iostream.h> #include <string.h> #include <stdlib.h> // classes dclares prcdemment main() { faculte f1; // f1 est un objet de classe facult licence l1; // l1 est un objet de classe licence f1.saisir(); // saisie des noms dans f1 l1.saisir_prof(); // saisie du nom de prof dans l1 l1.reception_noms(f1.envoi_noms()); //transfert des noms l1.saisie_notes(); // saisie des notes dans l1 f1.reception_notes(l1.envoi_notes()); // transfert des // notes l1.affichage(); // affichage des noms et notes de l1 f1.affichage(); // affichage des noms et notes de f1 system("PAUSE"); }