I have three different base classes:
class BaseA { public: virtual int foo() = 0; }; class BaseB { public: virtual int foo() { return 42; } }; clas
Class Child will compile if derived from A, you just can't instantiate objects of that type.
This might be valuable if you were going to override some functions from Base, and then derive again.