next up previous contents
Next: Correspondance des arguments Up: Surcharge Previous: Surcharge

Surcharge et portée

Une fonction d'une classe dérivée n'est pas dans le même portée qu'une fonction de même nom dans la classe de base et donc il ne peut y avoir de surcharge dans ce cas.

class base{
public:
  void f();
};
class derivee: public base{
public:
  int f(int);
};
la déclaration derivee::f occulte la déclaration base::f: il n'y a donc pas de surcharge, et si d est un objet de classe derivee, on ne pourra avoir d'appel d.f() mais par contre on peut avoir un appel d.base::f().




Mon Oct 20 14:02:48 MET 1997