When a method is declared as virtual
in a class, its overrides in derived classes are automatically considered virtual
as well, and the C++ language ma
Weak point in design, I agree. I also think that'd be really nice if there was a different syntax for two different things:
With current C++ rules when overriding a function - it's easy to screw things. If you mistype the function name (or make a mistake in its parameters list) - then you actually do (1) instead of (2).
And you have no error/warning. Just get the surprise at run-time.