Creation de classe [code en c++] [g++]

Contenu du snippet

Salut,
bon et bien dans cet exemple je vais vous montrer comment ecrire une classe en C++.

Source / Exemple :


#include <iostream.h>

class Voiture      //creation de la classe Voiture
{
 public:            //on declare que tous les membres qui suivent sont public
  
  //declaration des variables qui seront "global" pour la class
  //ce que je veut dire c'est que ces variables la seront accessible
  //pour toutes les fonctions de la classe Voiture
  int nb_place;
  char *couleur;
  char *constructeur;
  char *modele;
 
  //Fonction setConstructeur on est pas obliger de metre
  //ca comme je l'est mis ci-dessosu on peut aussi lecrire:
  //void setConstructeur(char *construct) ect...
  //donc la pour chacques fonction c'est commes pour des fonctions
  //classique que vous utiliser d'habitude
  void Voiture::setConstructeur(char *construct)
  {
    //la je range la valeur de cosntruct dans constructeur pour pouvoir 
    //utiliser cette valuer dans d'autres fonctions de ma classe
    constructeur = construct; 
  }

  //Bon apres c'est partout pareil
  
  void Voiture::setModel(char *model)
  {
    modele = model;
  }

  void Voiture::setNbPlace(int place)
  {
    nb_place = place;
  }

  void Voiture::setCouleur(char *coul)
  {
    couleur = coul;
  }

  char *Voiture::getConstructeur(void)
  {
    //la je retourne ce qui est contenu dans constructeur, donc vaut mieux
    //d'abbord avoir utiliser la fonction Voiture::setConstructeur(char *) avant 
    //d'utiliser cette fonction pour eviter tout probleme :-)
    return constructeur;  
  }

  //Pareil pour les fonctiosn qui suivent

  char *Voiture::getModele(void)
  {
    return modele;
  }

  char *Voiture::getCouleur(void)
  {
    return couleur;
  }

  int Voiture::getNbPlace(void)
  {
    return nb_place;
  }

};

int main(void)
{
  //Ces variables servironts pour la sutie (plusbas dans le soruce :-)
  char *constructeur;
  int nb_place;
  char *couleur;
  char *model;

  //Alors ici on declare que one herite de la classe Voiture ce qui signifie que one
  //possede totues les fonctions ecrite dans la classe Voiture comme par exemple
  //Voiture::setConstructeur(char *) :-)
  Voiture one; 
  //donc comme one a heriter des fonctions de la classe de Voiture on peu utiliser
  //setConstructeur("PEUGEOT"); comme je disait jsute ua dessus hehe :-)
  //en fait c'est un peu le meme principe que les structure (note: voir mon source sur les structure :-)
  one.setConstructeur("PEUGEOT");  
  one.setModel("406"); //ici on definie le modele
  one.setCouleur("bleu"); //ici la couleur de la voiture
  one.setNbPlace(4); //et ici le nombre de place

  //on aurait aussi tres bien pu ecrire es meme fonctions de la maniere suivante:

  Voiture two;
  two.Voiture::setConstructeur("Citroen");
  two.Voiture::setModel("Picasso");
  two.Voiture::setCouleur("vert");
  two.Voiture::setNbPlace(4);

  //le fait d'ecrire ces premiere fonctiosn de cette manieres n'empeche pas d'utiliser
  //les autres fonctions de la meniere precedente, Exemple:

  constructeur = two.getConstructeur();
  model = two.getModele();
  couleur = two.getCouleur();
  nb_place = two.getNbPlace();

 
  //bon apres avoir ranger ces valeur dans un tableux et bien on vas les afficher
  //biensur que je sais que vosu savait faire ca ;-) mais c'est jsute pour bien
  //terminer ce petit exemple ;o)

  cout << "********************************\n";
  cout << "**       Votre commande       **\n";
  cout << "********************************\n";
  cout << "Constructeur:"<<constructeur<<"\n";
  cout << "Modele:      "<<model<<"\n";
  cout << "Nb de place: "<<nb_place<<"\n";
  cout << "Couleur:     "<<couleur<<"\n";
  cout << "********************************\n";

}

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.