Reader Q&A: A good book to learn C++11?

Last night a reader asked one of the questions that helped motivate the creation of isocpp.org:

I am trying to learn the new C++. I am wondering if you are aware of resources or courses that can help me learn a little. I was not able to find any books for C++11. Any help would be greatly appreciated.

By the way, the isocpp website is great :)

Thanks! And you beat me to the punchline. :)

A good place to start is isocpp.org/get-started. It recommends four books, three of which have been updated for C++11 (and two of those three are available now). C++ Primer 5e is a good choice.

We also maintain a list of new articles and books under isocpp.org/blog/category/articles-books.

As for courses, there’s also a growing list of good courses there under isocpp.org/blog/category/training, including two C++11 overview courses by Scott Meyers and Dave Abrahams respectively.

As with all blog categories, you have three ways to find the most recent items under Articles & Books, Training, and other categories:

  • Home page: The most recent items in each category are always listed right on the site’s newspaper-inspired home page.
  • RSS: You can subscribe to RSS feeds for all posts, or for specific categories to get notifications of new articles, books, training, events, and more as they become available.
  • Twitter: Follow @isocpp for notifications of new stuff.

The site and blog are curated, aiming for higher quality and lower volume. Even so, we know you won’t be able to read, watch, or listen to all of the content. So we’re doing our best to make sure that when you do pick something recommended by the site, it’s likely to be of high quality and address what you’re looking to find.

Enjoy! This is version 1 of the site… I hope that it’s already useful, and you’ll see quite a bit more over the coming year.

15 thoughts on “Reader Q&A: A good book to learn C++11?

  1. The book : “Foundation of Algorithms in C++11, Volume 1: Using and Extending C++11, Boost and Beyond[paperback]”: is now available at amazon:

    http://www.amazon.com/Foundation-Algorithms-11-Volume-Extending/dp/148125698X/ref=sr_1_1?ie=UTF8&qid=1355753746&sr=8-1&keywords=foundation+of+algorithms+in+c++11+volume+1

    Table of Contents : http://www.algocoders.com/sites/default/files/toc1.pdf
    Sample Chapter 1 : http://www.algocoders.com/sites/default/files/1.pdf

    For more information, please visit the link below:
    http://algocoders.com/article/books

  2. Well, you won’t find a more comprehensive and peer reviewed list of C++ books than http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list. Just search for “C++11” for books covering C++11.

    Anyways, on the topic of C++ books, I just wanted to say it would be very great if someone out there could write a comprehensive modern book about IOStreams, Locales and perhaps Encodings. While the outdated “The C++ IO Streams and Locales” by Angelika Langer and Klaus Kreft is a great book and still has merit, there is just *not* enough information out there on these topics.

  3. I just wanted to second the recommendation for C++ Primer 5e. As others have pointed out, it is lengthy, and if you are a already an experienced C++ developer, there are likely better options. However, if you’re just diving into the language, or haven’t used C++ for a while, C++ Primer is an excellent read. I found it very well written and clear. The code samples act as a reference for good, modern C++ style.

  4. Hi, I came across this: http://www.cpprocks.com/ I don’t know how good the book is but on a first sight it seemed good. I think there are free samples available on the website as well.

  5. @Herb: The first book “Foundation of Algorithms in C++11, Volume 1 : Using and Extending C++11, Boost and Beyond” is in the final stage. I have submitted a proposal for blog article at isocpp.org which contains some basic info which we will keep updated from time to time. Awaiting approval from isocpp.org.

    The second book “C++11 Algorithms : Using and Extending C++11, Boost and Beyond” is also more than 50% complete. Can we share the information about the work in progress ?

  6. We at http://www.algocoders.com/ will be publishing a series of books(or booklets) which will bridge the gap between esoteric and street-side ones. Initial focus will be on C++11, Boost, Loki, STL, Algorithms, Data Structures, Multi-threading, Design Patterns, gcc, clang, valgrind.

    First book in this series is :(ETA Dec 2012)

    Foundation of Algorithms in C++11, Volume 1
    Using and Extending C++11, Boost and Beyond

  7. @Scott: Effective C++11? Please. With a few items on rvalue references.
    @Herb: Looking forward to the “Effective Concurrency” book to complement Anthony Williams “C++ Concurrency In Action”.

  8. The ETA really depends heavily on when I have a solid month to update and collect the articles. I have enough material (search for “Effective Concurrency” on this site for pointers to the DDJ articles — there’s enough for a book) and I have to update/C++11-ify them and put them in book form.

    I get the same question about Exceptional C++(11) — ditto except I have to actually update the GotWs and write new ones, which I started in the spring and summer before being completely swamped with isocpp.org and the Foundation instead.

  9. Love the “one stop shopping” provided by the isocpp site. On the topic of upcoming C++ titles, any ETA for your Effective Concurrency book? Various retailers show dates ranging from one month to over one year. Thanks.

  10. On the book front, I think it’s worth noting that my training materials on C++11 remain a viable option. As you noted in your review of them, they’re not a book, but they’re available immediately, they’re a lot shorter than comprehensive C++11 books are or are likely to be (364 pages versus around 1000), and buyers receive updates to the notes when I make them. (Since their original publication in 2010, they’ve been updated five times.) I encourage people to check out the free sample so they can judge for themselves whether this is something they would find useful in moving from C++98/03 to C++11.

    Scott

Comments are closed.