Free eBooks Download, ePub book, college books

Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14

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++

“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