Hello,

Does a method need to be virtual to be over-ridden in a subclass? For example:

class A
{
public:
A();
~A();
virtual void DoSomething();
}

class B : public A
{
public:
B();
~B();
void DoSomething();
}

Do I have to have the "virtual" keyword in there? What benefit does it provide if it is not a pure virtual method?

Thanks!