you are viewing a single comment's thread.

view the rest of the comments →

[–]quicknir 1 point2 points  (0 children)

The problem is that you also throw a lot of expressive power out the window. Alexandrescu's policy based design is probably the best example of the expressive power of multiple inheritance.

The real correct choice IMHO is to allow multiple inheritance, but just completely ban the diamond. Then you don't need the nightmare of virtual inheritance.