Виртуальные функции в конструкторе класса
Если вы вызываете виртуальную функцию в конструкторе, то будет вызвана та реализация, которая определена в данном классе, а не в наследнике.
Другими словами:
class A
{
public:
A()
{
call();
}
virtual void call ()
{
printf("A");
}
};
class B: public A
{
B()
{
call();
}
virtual void call ()
{
printf("B");
}
};
int main()
{
B b;
}
В консоле вы увидите:
A B
Теги:


