Obsolete C++ Books

Hi All,

I pre-apologise if this is inappropriate, or overly long. Given the volume of C++11 style answers on this site, I feel confident the users here can easily answer my query.

Years ago, on my quest to become a C++ master (ha ha), I made a list of books I wanted to read. I never got through them all, but I'm aware that some of the clever content in those books has been rendered obsolete by new features found in C++11. I'm pretty sure that a random sampling of a dozen expert users on this site will have read all these books between them.

I'm trying to determine which of the books is no longer worth reading given the situation. For example, if the focus of a book is better programming practice through using core language features to implement patterns or features that are now part of the language, standard library or even boost, then I'd rather focus on a book with the newer, language and library supported description of such features.

In other words, which books should be considered obsolete?

I'm not trying to take anything away from the old masters ( especially since they're often the new masters too), I'm just trying to make the best use of limited time. I've omitted the books on my list that have newer "modern-enough" editions currently in print.

I'm currently making my way through Professor Stroustrup's 4th edition and although experience has taught me that it won't by itself be enough, I can't help but wonder how much else I'll need.

Here's my old list, grouped by author:

C++ Templates The Complete Guide - Josuttis & Vandevoorde

Effective C++ - Meyer
More Effective C++ - Meyer
Effective STL - Meyer

Exceptional C++ - Sutter
More Exceptional C++ - Sutter
Exceptional C++ Style - Sutter

Modern C++ Design: Generic Programming and Design Patterns Applied - Alexandrescu
C++ Coding Standards: 101 Rules, Guidelines, and Best Practices - Alexandrescu

Thanks very much for your thoughts and suggestions.

Kalf.
Only bad books are obsolete. As long as you know that a book was written before a new standard of the language, the book is still useful to you. You never know when you will have to work in an environment where C++11 is not available to you.

See also: http://stackoverflow.com/a/388282/1959975

By the way, I have never read any C++ book; I've never had the time or money.
All of these books are not obsolete. They continue to give good advice about C++ programming. Some part of the books which were printed before C++11 was created might be superseded by C++11 features, or not include new features, but are still good.

For example Herb Sutter books were printed long ago and some parts are outdated (like anything related to export templates in Exceptional C++ style), but most points still relevant even after years. And actually some points became really relevant only today: const_iterators were not really supported by standard library before and attempts to use them were often unsuccessful.

Another example in the same book: it uses std::mem_fun which is deprecated and going to be removed in C++17. But it makes this chapter no less useful as mem_fun is only used to demonstrate more global problem discussed there.

I suggest to read newest possible books first: it will teach you how to work with modern C++ and later when you can decide for yourself what is worth remembering and what is outdated to read other books.
So try to get Effective Modern C++ and latest edition of Effective C++ for Meyers books.
I do not remember Exceptional series well, but for now I suggest to start with Exceptional C++ style only and C++ Coding Standards.
Good templates books are never outdated, so just do not forget to grab one describing C++11 features too.
Last edited on
Thanks @MiiNiPaa, this is the sort of reasoned answer I was hoping for.
Topic archived. No new replies allowed.