Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.
Read instantly on your browser with Kindle for Web.
Using your mobile phone camera - scan the code below and download the Kindle app.
Embracing Modern C++ Safely 1st Edition
Purchase options and add-ons
Maximize Reward and Minimize Risk with Modern C++
Embracing Modern C++ Safely shows you how to make effective use of the new and enhanced language features of modern C++ without falling victim to their potential pitfalls.
Based on their years of experience with large, mission-critical projects, four leading C++ authorities divide C++11/14 language features into three categories: Safe, Conditionally Safe, and Unsafe. Safe features offer compelling value, are easy to use productively, and are relatively difficult to misuse. Conditionally safe features offer significant value but come with risks that require significant expertise and familiarity before use. Unsafe features have an especially poor risk/reward ratio, are easy to misuse, and are beneficial in only the most specialized circumstances.
This book distills the C++ community's years of experience applying C++11 and C++14 features and will help you make effective and safe design decisions that reflect real-world, economic engineering tradeoffs in large-scale, diverse software development environments. The authors use examples derived from real code bases to illustrate every finding objectively and to illuminate key issues. Each feature identifies the sound use cases, hidden pitfalls, and shortcomings of that language feature. After reading this book, you will
- Understand what each C++11/14 feature does and where it works best
- Recognize how to work around show-stopping pitfalls and annoying corner cases
- Know which features demand additional training, experience, and peer review
- Gain insights for preparing coding standards and style guides that suit your organization's needs
- Be equipped to introduce modern C++ incrementally and judiciously into established code bases
Seasoned C++ developers, team leads, and technical managers who want to improve productivity, code quality, and maintainability will find the insights in this modular, meticulously organized reference indispensable.
Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
- ISBN-100137380356
- ISBN-13978-0137380350
- Edition1st
- PublisherAddison-Wesley Professional
- Publication dateDecember 23, 2021
- LanguageEnglish
- Dimensions7.4 x 2 x 9.15 inches
- Print length1376 pages
Frequently bought together

Customers who viewed this item also viewed
From the Publisher
New edition of Bjarne's Stroustrup's "A Tour of C++" now available
This third edition covers many features that are new in C++20 as implemented by major C++ suppliers, including modules, concepts, coroutines, and ranges. It even introduces some library components in current use that are not scheduled for inclusion in the standard until C++23.
|
|
|
|
|
|
|
|---|---|---|---|---|---|---|
| C++20 for Programmers | Discovering Modern C++ | Beautiful C++ | Core C++ Guidelines Explained | Embracing Modern C++ Safely | Teach Yourself C++ in One Hour a Day | |
|
Add to Cart
|
Add to Cart
|
Add to Cart
|
Add to Cart
|
Add to Cart
|
Add to Cart
|
|
| Customer Reviews |
4.2 out of 5 stars
48
|
4.3 out of 5 stars
31
|
4.4 out of 5 stars
66
|
4.7 out of 5 stars
28
|
4.4 out of 5 stars
30
|
4.6 out of 5 stars
58
|
| Price | $51.77$51.77 | $49.99$49.99 | $43.17$43.17 | $37.79$37.79 | $49.38$49.38 | $36.91$36.91 |
| Who is this for | Programmers experienced with another language that want to learn C++20. | Those with backgrounds in the sciences that want to learn C++20, regardless of programming experience. | C++ programmers with all levels of experience. | C++ programmers with all levels of experience. | C++ programmers with all levels of experience. | Those with little or no programming experience. |
| Approach | Hands-on instruction, including 200+, real-world examples to help you quickly master C++20, its “Big Four” features (Ranges, Concepts, Modules and Coroutines), and idioms using popular compilers. | Drawing on extensive experience teaching C++ to physicists, mathematicians, engineers, and students, this intensive introduction guides you smoothly to sophisticated approaches based on advanced features. | Identifies 30 Core Guidelines you'll find especially valuable and offers detailed practical knowledge for improving your C++ style through useful conceptual insights and expert sample code. | Condenses the C++ Core Guidelines to their essence, removing esoterica, sharing new insights and context, and presenting well-tested examples to help you write more elegant C++ programs and improve legacy code. | Distills the C++ community's years of experience applying C++11 and C++14 features to help you make effective and safe design decisions that reflect real-world, economic engineering tradeoffs in large-scale, diverse software development environments. | This complete tutorial will help you quickly master the basics of object-oriented programming and teach you advanced C++ language features and concepts. |
| About the authors | Paul Deitel and Harvey Deitel are the founders of Deitel & Associates, Inc. Millions of people worldwide have used Deitel products to master major programming languages and platforms. | Peter Gottschling has extensive experience teaching C++ to physicists, mathematicians, engineers, and students, is a member of the ISO C++ standards committee and vice-chair of Germany’s programming language standards committee. | J. Guy Davidson and Kate Gregory are expert C++ programmers. Guy is a contributor to the C++ standards committee and Kate is known for her excellent teaching and writing on C++ and programming. | Rainer Grimm is a trainer, coach, and technology Consultant. He is the author of several books on modern C++, concurrency, and blogs at modernesscpp.com. | John Lakos, Vittorio Romeo, Rostislav Khlebnikov, and Alisdair Meredith are software engineers at Bloomberg and leading authorities on C++. John Lakos is a long-time member of the C++ Standards Committee. | Siddhartha Rao is the vice president in charge of product security at SAP SE. A software engineer at heart, Siddhartha is convinced that the rapid evolution of C++ has powered this age of machine learning and artificial intelligence. |
| “This is a fine book that covers a surprising amount of the very large language that is C++20—an in-depth treatment of C++ for a reader familiar with how things work in other programming languages.” —Arthur O’Dwyer, C++ trainer | " For true geeks, it is an easy and entertaining read. For most software developers, it offers something new and useful." --Bjarne Stroustrup, inventor of C++ and co-editor of the C++ Core Guidelines | "We are very pleased to see Rainer Grimm applying his teaching skills and industrial background to tackling the hard and necessary task of making [these] accessible to more people." --Bjarne Stroustrup and Herb Sutter, co-editors, C++ Core Guidelines |
Editorial Reviews
About the Author
Vittorio Romeo is a senior software engineer at Bloomberg, building mission-critical C++ middleware and training colleagues on modern C++. He is also the creator of many open-source C++ libraries and games.
Dr. Rostislav Khlebnikov is a team lead and senior software engineer in Bloomberg's BDE team, where he directs the development of high-performance C++ foundation software.
Alisdair Meredith is a senior software engineer in Bloomberg's BDE team and a long-standing member of the C++ Standards Committee, where he was the Chair of its Library Working Group between 2010 and 2015.
Product details
- Publisher : Addison-Wesley Professional; 1st edition (December 23, 2021)
- Language : English
- Paperback : 1376 pages
- ISBN-10 : 0137380356
- ISBN-13 : 978-0137380350
- Item Weight : 3.8 pounds
- Dimensions : 7.4 x 2 x 9.15 inches
- Best Sellers Rank: #1,541,160 in Books (See Top 100 in Books)
- #351 in C++ Programming Language
- #1,020 in Computer Programming Languages
- Customer Reviews:
About the author

Discover more of the author’s books, see similar authors, read book recommendations and more.
Customer reviews
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on Amazon-
Top reviews
Top reviews from the United States
There was a problem filtering reviews right now. Please try again later.
I find it difficult to read but that's because the book is organized as a reference, and not as a tutorial. However, this is not a complaint but just an observation. I believe this book succeeds spectacularly in what it intends to accomplish, which is to provide in-depth guidance regarding whether and how to use C++11/14 features.
1. It serves as a definitive reference of best practices. No longer I have to dig out the notes, blogs, videos that I read or took in the past.
2. It's very practical and concise. Take an example from section "Range for". The book gives a description and specification of range for loops, then shows 3 different use cases, followed by 3 potential pitfalls, and last 4 annoyances of using range for loops. No part of the book is boring, so I could open the book to any page and starts reading it.
3. Lots of cross references between different sections. Take section "Range for" again, you can see references to "forwarding reference", "auto variables", "initializer list", "decltype" and so on. This organization really helps me to weave different concepts together to form a more coherent picture of concepts.
All in all, I am grateful of efforts the authors hat put into the book. And I hope this legacy will continue in the future versions of C++.
I read it now only if I can't fall asleep. And I never read more than a few pages.
Top reviews from other countries
The book's text deserves five stars, but the printed book gets only three. All the code comments are in blue, and in my copy the blue is so faint I have to strain to read them.
Attention, c'e n'est pas un livre pour les débutants, il est assez technique et très détaillé
Some diagrams unreadable on kindle. Ok on a tablet though







