Effective Modern C++
- Length: 320 pages
- Edition: 1
- Language: English
- Publisher: O'Reilly Media
- Publication Date: 2014-12-12
- ISBN-10: 1491903996
- ISBN-13: 9781491903995
- Sales Rank: #31949 (See Top 100 Books)
Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14
At first glance, C++11 and C++14 are defined by the new features they introduce, e.g., auto type declarations, move semantics, lambda expressions, and concurrency support. Information on these features is easy to come by, but learning to apply them effectively (such that the resulting software is correct, efficient, maintainable, and portable) is more challenging. That’s the role of this book. It describes how to write effective software using C++11 and C++14, i.e., using modern C++.
Topics include:
- The pros and cons of uniform initialization, noexcept specifications, perfect forwarding, and smart pointer make functions.
- The relationships among std::move, std::forward, rvalues references, and universal references.
- The most effective forms of lambda capture.
- How best practices in “old” C++ programming (i.e., C++98) require revision for modern C++.
Effective Modern C++ follows the proven format of Scott Meyers’ earlier Effective books (Effective C++, More Effective C++, and Effective STL), but covers entirely new material. It’s essential reading for every modern C++ software developer.
Table of Contents
Chapter 1. Deducing Types
Chapter 2. auto
Chapter 3. Moving to Modern C++
Chapter 4. Smart Pointers
Chapter 5. Rvalue References, Move Semantics, and Perfect Forwarding
Chapter 6. Lambda Expressions
Chapter 7. The Concurrency API
Chapter 8. Tweaks