Avatar ·

Comment appeler une méthode de la classe parente depuis une méthode surchargée en C++ ?

Bonjour ! J'apprends le C++ et je n'arrive pas à comprendre l'héritage. J'ai une classe de base `Animal` avec une méthode virtuelle `Speak()` qui affiche "Some generic animal sound". Je crée une classe dérivée `Dog` qui surcharge cette méthode pour afficher "Woof!". Le problème est que dans la méthode `Speak()` de la classe `Dog`, je dois d'abord exécuter le code de la classe parente `Animal::Speak()`, puis ajouter ma propre sortie spécifique pour le chien. J'essaie de l'appeler directement, mais je n'y arrive pas. Voici mon code : ```cpp #include using namespace std; class Animal { public: virtual void Speak() { cout << "Some generic animal sound" << endl; } }; class Dog : public Animal { public: void Speak() override { // Ici, je veux d'abord appeler Animal::Speak() Speak(); // S'appelle lui-même — récursion infinie ! cout << "Woof!" << endl; } }; int main() { Dog myDog; myDog.Speak(); // J'attends