Rectangle.h

#ifndef _RECTANGLE_H_

#define _RECTANGLE_H_

class RECTANGLE

{    type   ListeattributsPrivés;

      typeRetourné nomMéthodePrivée(type listeParamètres);

   public :

      RECTANGLE(    ) :        {    }

      typeRetourné nomMéthodePublique(type listeParams);

};

#endif

 

Attn : par défaut, l'objet cible d'une méthode est un paramètre (implicite) passé par référence

 

Objet cible en (D)

type  nom-méthode(type  paramètres)const;

 

Attn : un objet est volumineux : toujours le passer par référence

 

Objet paramètre (D/R) ou (R)

type nom-méthode (nom-classe  &nom-objet );

 

Objet en paramètre (D)

type nom-méthode  (const nom-classe &nom-objet );

 

Constructeur inline

 

Nom-Classe.h

NOM-CLASSE(liste paramètres ac val-par-déf) : ZIC {vérifications}

 

·  Rq : la liste des variables avec valeur par défaut permet l'initialisation d'un rectangle sans paramètres

Ex : RECTANGLE(int a=0, int b=0)

 

·  Rq : la zone d'initialisation du contructeur (ZIC) permet d'affecteur les valuers par défaut aux attributs

Ex : attr1(a), attr2(b)

idem que {attr1=a; attr2=b;} dans la zone de vérifications

 

·  Rq : les vérifications permettent se sortir du profgramme si un des paramètres n'est pas correct

Ex : {if (attr1>0) exit(1);}

 

·  Ex de constructeur

RECTANGLE(int a=0, int b=0) : x(a), y(b) {if (a>0) exit(1);}

 

Constructeur non inline

 

Nom-Classe.h

NOM-CLASSE(liste paramètres ac val-par-déf);

 

Nom-Classe.C

NOM-CLASSE::NOM-CLASSE(liste paramètres ac val-par-déf) : ZIC {vérifications}

 

fichier .h = fichier en-tête

contient les déclarations (prototypes) des fonctions

fichier .C

   contient les définitions (corps) des fonctions

   inclus le fichier .h

 

Méthode

 

Nom-Classe.h

type  nom-méthode(type listeParam);

 
Nom-Classe.C

type NOM-CLASSE::nom-méthode(type listeParam)

{   

}

Attn : penser au const et au & pour les paramètres des méthodes !!

 

Rq : '::' est l'opérateur de résolution de portée

 

if (cond) instr1; else instr2;

Û

(cond) ? instr1 : instr2 ;

 

Rq : pour optimiser : if… else… quand tous les tests n'ont pas besoin d'être évalués

 


INTERRO 04

//Classe.C         

#include "Classe.h"

 

extern type nom-var-externe;

Þ permet d'utiliser une variable déclarée dans ppal.C

 

après chq manipulation de flot (cin, cout) faire un cout<<endl;