You override the method in D
, even if it is just to forward to one (or both) of the B
and C
overrides. (You have to do this even if you never call print
on an expression whose static type is D
, since an A*
elsewhere could point to a D
.)
1
solved What to do when a class doesn’t need to override a method inherited from multiple bases? [closed]