Professional C++, Fourth Edition, provides a code-intensive, practical guide to best practices for designing and building C++ applications. Geared to experienced C++ developers, the book teachers programmers how to think in C++ -- that is, how to design effective solutions that maximize the capabilities of the language. The authors then?drill down into the language itself, explaining poorly understood elements of the C++ feature set, as well as pitfalls to avoid. The author teaches each feature by example, presenting numerous challenging, real-world program segments that readers can plug into their own applications. There are several, in-depth case studies with extensive, working code that’s been tested on Windows, Linux, and Solaris platforms. The author intersperses the text with non-trivial tips, tricks, and workarounds. Along with an emphasis on good programming style, Professional C++ shows best practices for testing and debugging applications. The fourth edition will be substantially revised to cover the upcoming C++17 release. This new C++ standard will have substantial impacts on the way in which professional developers use C++ to build applications. Note that all discussion of features introduced with the new standard will be clearly highlighted, so readers can quickly identify them. New topics for the C++17 release include new language features such as generic lambdas and lambda capture expressions; nested namespaces; new static_assert; structured bindings; initializers for is and switch statements; variable templates; hexadecimal floating point literals; UTF-8 character literals and more. The standard library will also have new features, including special mathematical functions, memory management tools, file system API, type traits, string conversion primitives, and more. --all of which will be fully covered. In addition, the structure and sequence of some of the chapters will be changed to make the reading experience more fluent and to introduce certain modern C++ concepts early on in the book so that they can be used in example code throughout the remaining of the book.