Effective Modern C++
42 Specific Ways to Improve Your Use of C++11 and C++14
Publisher: O'Reilly Media
Final Release Date: November 2014
Pages: 336

Coming to grips with C++11 and C++14 is more than a matter of familiarizing yourself with the features they introduce (e.g., auto type declarations, move semantics, lambda expressions, and concurrency support). The challenge is learning to use those features effectively—so that your software is correct, efficient, maintainable, and portable. That’s where this practical book comes in. It describes how to write truly great software using C++11 and C++14—i.e. using modern C++.

Topics include:

  • The pros and cons of braced initialization, noexcept specifications, perfect forwarding, and smart pointer make functions
  • The relationships among std::move, std::forward, rvalue references, and universal references
  • Techniques for writing clear, correct, effective lambda expressions
  • How std::atomic differs from volatile, how each should be used, and how they relate to C++'s concurrency API
  • How best practices in "old" C++ programming (i.e., C++98) require revision for software development in modern C++

Effective Modern C++ follows the proven guideline-based, example-driven format of Scott Meyers' earlier books, but covers entirely new material.

"After I learned the C++ basics, I then learned how to use C++ in production code from Meyer's series of Effective C++ books. Effective Modern C++ is the most important how-to book for advice on key guidelines, styles, and idioms to use modern C++ effectively and well. Don't own it yet? Buy this one. Now".
-- Herb Sutter, Chair of ISO C++ Standards Committee and C++ Software Architect at Microsoft

Table of Contents
Product Details
About the Author
Colophon
Recommended for You
Customer Reviews

REVIEW SNAPSHOT®

by PowerReviews
oreillyEffective Modern C++
 
4.8

(based on 18 reviews)

Ratings Distribution

  • 5 Stars

     

    (16)

  • 4 Stars

     

    (1)

  • 3 Stars

     

    (1)

  • 2 Stars

     

    (0)

  • 1 Stars

     

    (0)

100%

of respondents would recommend this to a friend.

Pros

  • Well-written (14)
  • Helpful examples (13)
  • Accurate (12)
  • Easy to understand (11)
  • Concise (8)

Cons

No Cons

Best Uses

  • Expert (14)
  • Intermediate (14)
    • Reviewer Profile:
    • Developer (15)

Reviewed by 18 customers

Displaying reviews 1-10

Back to top

Previous | Next »

(1 of 1 customers found this review helpful)

 
5.0

Great book with new C++11/14 features

By Sebastian

from Bydgoszcz, Poland

About Me Designer, Developer, Educator

Verified Reviewer

Pros

  • Accurate
  • Concise
  • Easy to understand
  • Helpful examples
  • Well-written

Cons

    Best Uses

    • Expert
    • Intermediate

    Comments about oreilly Effective Modern C++:

    Content
    The book describes new language features introduced in C++11 and 14.

    The first paragraph explains how type resolution works in C++, which might be considered as an introduction to the second paragraph - auto types. The third paragraph is dedicated to several small improvements in C++11/14, like aliases, nullptrs or function overrides. Next paragraph is fully dedicated to smart pointers and their different use cases. Paragraph number five introduces std::move and std::forward concepts. Lambda expressions are covered in paragraph six and seventh introduces new concurrency API (Atomics). The last paragraph covers some minor tweaks.

    Writing style
    The book is organized into items (similarly to "Effective Java"). Multiple items form paragraphs which cover broader topic (such as concurrency). All items are clearly defined and contain a lot of code snippets, which makes them easier to understand. The book is very concise and to-the-point and defiantly dedicated for intermediate or advanced C++ programmers who want to learn new language features.

    Review
    This book is like manual for new C/C++ features. I often get back to it when I want to use something new. Very strict language and a lot of code examples help to understand described concepts. From my perspective the best part was about Atomics. Dealing with multithreded code (especially targeted for multiple runtimes) was a nightmare before introducing concurrency features. It is also worth mentioning that this book is not meant for beginners. The reader needs to have at least some intermediate experience to learn more advanced concepts shown in the book.

     
    5.0

    To improve your C++

    By Tom

    from Nacka, Swedeb

    About Me Developer

    Verified Reviewer

    Pros

    • Accurate
    • Concise
    • Easy to understand
    • Helpful examples
    • Well-written

    Cons

      Best Uses

      • Expert
      • Intermediate

      Comments about oreilly Effective Modern C++:

      This is a book you read to improve your C++. It is not a book you read to learn the basics of C++. Before reading this book you should have read "The C++ Programming Language, 4th ed" by Stroustrup and "The C++ Standard Library, 2nd ed" by Josuttis.

      As with the all books by Scott Meyers this book is well written. It is both entertaining and informative.

      (1 of 1 customers found this review helpful)

       
      4.0

      Good book, but very high pre-requisites

      By Jeff

      from Montreal

      About Me Developer

      Verified Buyer

      Pros

      • Accurate
      • Helpful examples

      Cons

      • Difficult to understand

      Best Uses

      • Expert

      Comments about oreilly Effective Modern C++:

      Excellent book, very accurate, very pointed knowledge. Excellent guidance. However, it takes way to much prior knowledge to get all the value out of it. A professional C++98 programmer with 10+ years of experience would still be completely lost.

      Every item should have the related code right up at the beginning, with either
      - an indication of what won't compile,
      - what will produce unexepected execution,
      - the interesting bit highlighted.
      Otherwise, the language/terms are quite inaccessible, even to the seasoned professional.

      Reading the book without a compiler handy is only valuable to get very general information about the topic.

      (3 of 6 customers found this review helpful)

       
      3.0

      Good book, too much filler text

      By Vlad S.

      from Toronto, ON

      About Me Developer

      Verified Reviewer

      Pros

      • Easy to understand
      • Helpful examples

      Cons

      • Badly Written
      • Lots Of Filler

      Best Uses

      • Expert
      • Intermediate

      Comments about oreilly Effective Modern C++:

      This is a good book jumping around most notable features of modern 11/13 C++. Only problem I have with it - it seems that author had hard time filling 300 pages with useful content, so some "items" are amazingly stretched, a lot of filler text and unnecessary explanation of obvious things explained before. I would say book could be at least half shorter without losing any value.

      (1 of 1 customers found this review helpful)

       
      5.0

      A must read - as expected

      By nopcoder

      from Germany

      About Me Developer

      Verified Buyer

      Pros

      • Accurate
      • Concise
      • Easy to understand
      • Helpful examples
      • Well-written

      Cons

        Best Uses

        • Expert
        • Intermediate

        Comments about oreilly Effective Modern C++:

        Even though I already have some experience with C++11, Scott Meyers book adds some goodies to my knowledge.

        (0 of 4 customers found this review helpful)

         
        5.0

        Up to date for at least 10 years!

        By jantastic

        from Hamburg, Germany

        Comments about oreilly Effective Modern C++:

        Unfortunately the print version isn't available before January 2025. But I'm pretty shure it's worthwhile to wait that long!

        (1 of 2 customers found this review helpful)

         
        5.0

        A must-read book

        By scribblekid

        from Germany

        About Me Developer, Educator

        Verified Buyer

        Pros

        • Accurate
        • Concise
        • Helpful examples
        • Well-written

        Cons

          Best Uses

          • Expert
          • Intermediate
          • Novice

          Comments about oreilly Effective Modern C++:

          If you know the "Effective" series books, you know what to expect, and you won't be dissappointed.

          (1 of 1 customers found this review helpful)

           
          5.0

          I would recommend this

          By Paxxi

          from Piteå

          About Me Developer, Sys Admin

          Verified Buyer

          Pros

          • Accurate
          • Concise
          • Easy to understand
          • Helpful examples
          • Well-written

          Cons

            Best Uses

            • Expert
            • Intermediate

            Comments about oreilly Effective Modern C++:

            I love the authors style of writing. The book is very well structured and it's easy to jump around and read the specific piece you're interested in at the moment.

             
            5.0

            Must buy for every person in C++

            By Devadatta Herekar

            from India

            Verified Reviewer

            Pros

            • Accurate
            • Concise
            • Easy to understand
            • Helpful examples
            • Well-written

            Cons

              Best Uses

              • Expert
              • Intermediate

              Comments about oreilly Effective Modern C++:

              Hats off to scott meyers for his efforts and for being a source of inspiration to millions of people. Effective author and Effective speaker just like his books.

              (1 of 1 customers found this review helpful)

               
              5.0

              Recommended

              By Doug

              from Sunnyvale, CA

              About Me Developer

              Verified Buyer

              Pros

              • Accurate
              • Well-written

              Cons

                Best Uses

                • Expert
                • Intermediate

                Comments about oreilly Effective Modern C++:

                Effective Modern C++ is a nice complement to a C++ reference, like The C++ Programming Language or cppreference.com. While the references cover everything, this book covers a few topics in detail, helping you more deeply understand the rationale behind some of the language and library features and how to use them well.

                While this book is probably a good purchase for anyone using C++, if you are an intermediate C++ programmer looking to up your game or an old-school C++ expert looking to start using C++11/14, then you should definitely get this book.

                Displaying reviews 1-10

                Back to top

                Previous | Next »

                 
                Buy 2 Get 1 Free Free Shipping Guarantee
                Buying Options
                Immediate Access - Go Digital what's this?
                Ebook:  $42.99
                Formats:  DAISY, ePub, Mobi, PDF
                Print & Ebook:  $54.99
                Print:  $49.99