Bonjour j'ai une question portant sur l'appel de fonction virtuelle.
Imaginons que je définis deux classes A et B comme ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
class A
{
  void foo() {
    bar();
  }
  virtual void bar() {
    cout << "A" << endl;
  }
}
 
class B : public A
{
  void bar() {
    cout << "B" << endl;
  }
}
Que va afficher le code suivant ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
A* b = new B();
b.foo();
Il me semble que "B" devrait s'afficher mais j'aurais besoin d'une confirmation...