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++.
- 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.
About the Author
Scott Meyers is one of the world's foremost experts on C++. He's best known for his chart-topping Effective C++ books—Effective Modern C++ (new!), Effective C++, More Effective C++,
and Effective STL
. He also published the annotated training materials, Overview of the New C++ (C++11/14)
and Effective C++ in an Embedded Environment.
Scott founded and is Consulting Editor for the Effective Software Development
Series, and he conceived the boutique conferences The C++ Seminar and C++ and Beyond. A programmer since 1972, he holds an M.S. in Computer Science from Stanford University and a Ph.D. from Brown University.
Scott maintains a blog for people interested in his publications and other professional activities and interests.