Next: Portée et héritage
Up: Héritage simple en C++
Previous: Héritage simple en C++
Une classe dérivée dans sa déclaration spécifie de
quelle(s) classe(s) elle hérite mais précise aussi le contrôle d'accès
des membres hérités :
-
dans tous les cas,
ne peut être accessible dans la classe dérivée que la partie publique ou
protégée de la classe de base
-
si l'héritage est public, les membres publics et protégés de
la classe de base sont respectivement publics et protégés dans la classe dérivée
-
si l'héritage est privé, les membres publics et protégés de la classe de
base sont privés dans la classe dérivée
-
si l'héritage est protégé, les membres publics et protégés sont
protégés dans le classe dérivée.
-
on peut déclarer une classe dérivée comme friend dans la classe de base,
permettant ainsi l'accès à tous les membres de la classe de base.
- par défaut, l'héritage est privé pour une class et public
pour une struct
Exemple:
class A{
public:
int a,d;
protected:
int b;
private:
int c;
};
class B:public A{};
// a d public, b protege, c inaccessible
class C:private A{};
// a b d prives, c inaccessible
class D:private A{
public:
A::a;
protected:
A::b;
}; // a public, c inaccessible,
// b protege, d prive
Mon Oct 20 14:02:48 MET 1997