avatarJ.J. Pryor

Summary

The webpage lists the best C++ books for study in 2023, ranging from introductory texts to advanced works, authored by experts including Bjarne Stroustrup, the language's inventor.

Abstract

The article "The Best C++ Books to Study in 2023" provides a curated list of essential reading materials for programmers at all levels who are looking to learn or deepen their understanding of C++. It features books written by the language's creator, Bjarne Stroustrup, as well as other renowned authors in the field. The selection includes comprehensive guides for beginners, practical programming examples, insights into modern C++ features, and resources for those interested in game programming. The books are praised for their clarity, practicality, and the depth of knowledge they offer, with some titles also serving as textbooks for university courses and being updated to include the latest C++ standards.

Opinions

  • The article emphasizes the importance of learning from the inventor of C++ himself, Bjarne Stroustrup, whose books are considered must-reads for understanding the language's core principles and design philosophy.
  • It suggests that even experienced programmers can benefit from reading Stroustrup's works to gain insights into the language's evolution and the rationale behind its features.
  • The practical approach of some books, such as "Accelerated C++," is highlighted as particularly useful for beginners who can start creating complex programs early in their learning journey.
  • The inclusion of a book focused on game programming indicates the relevance of C++ in the gaming industry and the value of learning through the development of fun, playable games.
  • The article acknowledges the ongoing development of C++ with references to the latest standards, C++17 and C++20, and the importance of staying updated with modern programming practices.
  • It also provides a nod to the Standard Template Library (STL) as an important tool for programmers, with some books offering expanded material on the subject.
  • The presence of affiliate links suggests that the article may be partially monetized through book sales, indicating a potential commercial interest alongside the educational content provided.

The Best C++ Books to Study in 2023

Photo by Roman Synkevych 🇺🇦 on Unsplash

Learning any new programming language can be daunting. But for C++ programmers, the available learning resources are vast and varied. So where should you start?

To help you in your journey here’s a compiled list of many of the best C++ books to study — from introductory texts to more advanced works.

Whether you’re just getting started or looking to deepen your understanding of the language, these books will set you on the right path. So don’t wait — start studying today!

The Best C++ Books to Study in 2023

#1. Programming: Principles and Practice using C++

by Bjarne Stroustrup

Via Amazon

Description:

The author is the literal inventor of C++, so when he writes a book on the topic, people read it! This one in particular was published in 2014 and is aimed mostly at the C++ programming beginner. But as its written by the inventor himself, many intermediate and advanced programmers have also read the work, if anything just to gain an insight into the masterful thinking of a man who could create one of the most prominent programming languages of our time.

Where to get it?

Print · eBook

#2. Accelerated C++: Practical Programming by Example

by Mike Hendrickson, Andrew Koenig, and Barbara Moo

Via Amazon

Description:

Made for beginners with a practical approach (rather than purely theoretical) that gets readers started making somewhat complex but easily explained programs straight away. This is a great book to see follow a concept based approach rather than a 0 to 100, beginning to end kind of architecture.

The material is also taught as a Stanford course for several years running.

Where to get it?

Print

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

by Scott Meyers

Via Amazon

Description:

“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++.”

Where to get it?

Print · eBook

#4. Beginning C++ Game Programming: Learn to program with C++ by building fun games

by John Horton

Via Amazon

Description:

“The second edition of Beginning C++ Game Programming is updated and improved to include the latest features of Visual Studio 2019, SFML, and modern C++ programming techniques. With this book, you’ll get a fun introduction to game programming by building five fully playable games of increasing complexity. You’ll learn to build clones of popular games such as Timberman, Pong, a Zombie survival shooter, a coop puzzle platformer and Space Invaders.

The book starts by covering the basics of programming. You’ll study key C++ topics, such as object-oriented programming (OOP) and C++ pointers, and get acquainted with the Standard Template Library (STL). The book helps you learn about collision detection techniques and game physics by building a Pong game. As you build games, you’ll also learn exciting game programming concepts such as particle effects, directional sound (spatialization), OpenGL programmable shaders, spawning objects, and much more. Finally, you’ll explore game design patterns to enhance your C++ game programming skills.”

Where to get it?

Print · eBook

#5. The C++ Programming Language

by Bjarne Stroustrup

Via Amazon

Description:

“The new C++11 standard allows programmers to express ideas more clearly, simply, and directly, and to write faster, more efficient code. Bjarne Stroustrup, the designer and original implementer of C++, has reorganized, extended, and completely rewritten his definitive reference and tutorial for programmers who want to use C++ most effectively.

The C++ Programming Language, Fourth Edition, delivers meticulous, richly explained, and integrated coverage of the entire language―its facilities, abstraction mechanisms, standard libraries, and key design techniques. Throughout, Stroustrup presents concise, “pure C++11” examples, which have been carefully crafted to clarify both usage and program design. To promote deeper understanding, the author provides extensive cross-references, both within the book and to the ISO standard.”

Where to get it?

Print · eBook

#6. Starting Out with C++ from Control Structures to Objects

by Tony Gaddis

Via Amazon

Description:

Starting Out with C++: From Control Structures through Objects covers control structures, functions, arrays, and pointers before objects and classes in Tony Gaddis’s hallmark accessible, step-by-step presentation. His books help beginning students understand the important details necessary to become skilled programmers at an introductory level. Gaddis motivates the study of both programming skills and the C++ programming language by presenting all the details needed to understand the “how” and the “why”–but never losing sight of the fact that most beginners struggle with this material.

His approach is gradual and highly accessible, ensuring that students understand the logic behind developing high-quality programs. As with all Gaddis texts, clear and easy-to-read code listings, concise and practical real-world examples, and an abundance of exercises appear in every chapter. Updates to the 9th Edition include revised, improved problems throughout and a new chapter featuring completely rewritten and expanded material on the Standard Template Library (STL).”

Where to get it?

Print · eBook

#7. A Tour of C++ (C++ In-Depth)

by Bjarne Stroustrup

Via Amazon

Description:

“In A Tour of C++, Second Edition, Bjarne Stroustrup, the creator of C++, describes what constitutes modern C++. This concise, self-contained guide covers most major language features and the major standard-library components―not, of course, in great depth, but to a level that gives programmers a meaningful overview of the language, some key examples, and practical help in getting started.

Stroustrup presents the C++ features in the context of the programming styles they support, such as object-oriented and generic programming. His tour is remarkably comprehensive. Coverage begins with the basics, then ranges widely through more advanced topics, including many that are new in C++17, such as move semantics, uniform initialization, lambda expressions, improved containers, random numbers, and concurrency. The tour even covers some extensions being made for C++20, such as concepts and modules, and ends with a discussion of the design and evolution of C++.

This guide does not aim to teach you how to program (for that, see Stroustrup’s Programming: Principles and Practice Using C++, Second Edition), nor will it be the only resource you’ll need for C++ mastery (for that, see Stroustrup’s The C++ Programming Language, Fourth Edition, and recommended online sources). If, however, you are a C or C++ programmer wanting greater familiarity with the current C++ language, or a programmer versed in another language wishing to gain an accurate picture of the nature and benefits of modern C++, you can’t find a shorter or simpler introduction than this tour provides.”

Where to get it?

Print · eBook

#8. Sams Teach Yourself C++ in One Hour a Day

by Siddhartha Rao

Via Amazon

Description:

“Starting with one hour a day, you can gain all the skills you need to begin programming in C++. This complete tutorial will help you quickly master the basics of object-oriented programming and teach you advanced C++ language features and concepts. Fully updated for the C++20 standard, this practical book is designed to help you write C++ code that’s faster, simpler, and more reliable.

  • Master the fundamentals of C++ and object-oriented programming
  • Use the Standard Template Library (STL) to quickly develop more powerful and reliable real-world applications
  • Learn modern C++20 features such as concepts, ranges, views, adaptors, and modules
  • Apply proven Do’s and Don’ts to leverage best practices and avoid pitfalls from day one
  • Test your knowledge and expertise with focused exercises after every lesson
  • Learn using nearly 300 compiling code samples that are available for free download and have been explained in detail in the book”

Where to read it?

Print · eBook

#9. The Design and Evolution of C++

by Bjarne Stroustrup

Via Amazon

Description:

“This book focuses on the principles, processes and decisions made during the development of the C++ programming language. As the inventor of the language, Stroustrup presents his insight into the decisions which resulted in the features of C++ — the praised, the controversial and even some of the rejected ones. By writing this book the author presents his object-oriented programming philosophy to the interested programming community. His vehicle is the C++ language but his focus is on real object-oriented programming language development for the working programmer rather than as a abstract approach to the OOP paradigm.”

Where to get it?

Print

Related Reading

Or, click here to see all book recommendations

J.J. Pryor

For more of my collections, deep dives, and essays, come check out Pryor Thoughts. You can also join Medium through my referral link (no extra cost to you) and get access to millions of stories for one low price every month.

This article contains some affiliate links. That means I may get a small commission if you buy something, but the price is no different for you.

Programming
Programming Languages
C Programming
Book Review
Books
Recommended from ReadMedium