Почему мой виртуальный метод не отменяется?

class Base
{
public:
Base()
{
cout<<"base class"<<endl;
fun();
}
virtual void fun(){cout<<"fun of base"<<endl;}
};

class Derive:public Base
{
public:
Derive()
{
cout<<"derive class"<<endl;
fun();
}
void fun(){ cout<<"fun of derive"<<endl;}
};

void main()
{
Derive d;
}

Вывод такой:

base class
fun of base
derive class
fun of derive

Почему вторая строка не развлекается с производным ?

6
задан Cœur 22 January 2017 в 14:08
поделиться