LWN.net Logo

GCC 4.6.0 released

GCC 4.6.0 released

Posted Mar 29, 2011 10:54 UTC (Tue) by jwakely (subscriber, #60262)
In reply to: GCC 4.6.0 released by cmccabe
Parent article: GCC 4.6.0 released

> By the way, most experts recommend that you never use C++'s multiple inheritance support (unless you are inheriting from abstract base classes).

What about non-abstract empty bases? Should they never be used with MI?

What about std::ctype, std::codecvt, std::time_get and other facets?

What about std::iostream?

I guess I'll "never" be an "expert"


(Log in to post comments)

GCC 4.6.0 released

Posted Apr 2, 2011 0:10 UTC (Sat) by cmccabe (guest, #60281) [Link]

> What about non-abstract empty bases? Should they never be used with MI?

That's what I just said.

> What about std::iostream?

from a footnote in "Thinking in C++" by Eckel:

> Jerry Schwarz, the author of iostreams, has remarked to both of us on
> separate occasions that if he had it to do over again, he would probably
> remove MI from the design of iostreams and use multiple stream buffers and
> conversion operators instead

> I guess I'll "never" be an "expert"

Try reading Effective C++, More Effective C++, and anything by Alexandrescu. Or you can go renegade and read the C++ FQA. No matter whether you agree with Yossi, you will learn a lot.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds