Forcer l'appel aux fonctions de la classe mère
Bonjour,
Comment dans une fonction virtuelle (une fonction de callback) d'une classe fille obliger le développeur (ou même mieux le compilateur) à appeler la fonction virtuelle de la classe mère.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
class A
{
public:
virtual void Callback(void);
};
class B : public A
{
public:
virtual void Callback(void);
};
void B::Callback(void)
{
// mon traitement dans la classe B
...
// appel de la fonction virtuelle de A
// je veux être sûr de ne pas oublier cet appel
A::Callback();
}
void A::Callback(void)
{
// cette fonction doit IMPERATIVEMENT être appelée
...
} |
Est ce que ce besoin ne serait pas le signe d'un problème de conception des 2 classes ?
Merci de vos réponses