Я использую нативный C ++ с VSTS 2008. Быстрый вопрос о виртуальной функции. В моем примере ниже, есть ли какие-либо различия, если я объявлю Foo виртуальным void Foo () или void Foo () в классе Derived? Есть ли какое-либо влияние на будущие классы, которые будут производными от класса Derived?
class Base
{
public:
Base()
{
}
virtual void Foo()
{
cout << "In base" << endl;
}
};
class Derived : public Base
{
public:
Derived()
{
}
void Foo()
{
cout << "In derived " << endl;
}
};