Maybe I’m just missing something here, but why aren’t the derived classes in the JUCE example project using the virtual keyword?
For example, take JUCEHelloWorldApplication::initialise. It’s just declared as “void” in the sample code. But, JUCEApplication::initialise is declared as “virtual void”.
Is this some rule of virtual inheritance that I don’t know? What happens if a subclass declares a method as nonvirtual when there’s already a method with the same name in the parent class that is virtual?
It all seems to work okay, so I’m probably just confused.