In this brand-new fourth edition of The C++ Programming Language, author Bjarne Stroustrup, the creator of C++ has reorganized, extended, and completely rewritten his definitive reference and tutorial for programmers who want to use C++ most effectively. Past readers will find that the new edition has changed a great deal and grown considerably to encompass new language features, particularly run-time type identification, namespaces, and the standard library. At the same time, readers will recognize the lucid style and sensible advice that made previous editions so readable and enjoyable. Probably the biggest change is a substantial new section, well over 200 pages in length, covering the contents and design of the C++ standard library, the most important new feature of the C++ specification.

The author has also added a substantial number of new exercises while keeping many from previous editions that have retained their value. While The C++ Programming Language is not a C++ tutorial, strictly speaking, anyone learning the language, especially those coming from C, will greatly benefit from the clear presentation of all its elements.

This fourth edition makes C++11 fully accessible to programmers moving from C++98 or other languages, while introducing insights and techniques that even cutting-edge C++11 programmers will find indispensable. The book is divided into four main parts.

Looks good?

Buy This Book

Part I: Basics

Part I covers the fundamental concepts of C++ programming language. It starts with an introduction to C++ and programming, then moves on to cover basic C++ syntax, data types, expressions, control structures, functions, and classes. The chapters are designed to be easily understood by beginners with little to no prior programming experience. The concepts covered in Part I provide a strong basis for the more advanced topics covered in the later parts of the book.

Part II: Types and Declarations

Second part covers the more advanced aspects of C++ programming. It focuses on the various types and declarations available in the language, including built-in types, arrays, pointers, references, and user-defined types. The chapters in this section delve deeper into the details of these types and their usage, including their relationship with functions, classes, and templates. The concepts covered in this section are crucial to understanding the more advanced features of C++, such as templates and the standard library.

Part III: Classes and Objects

In third part, the basics of classes, objects, constructors, and destructors, as well as more advanced topics such as inheritance, polymorphism, virtual functions, and templates are covered. The chapters in this section provide a thorough understanding of how to create and use classes and objects in C++, as well as how to design and implement complex class hierarchies.

Part IV: Advanced Topics

Finally, the book covers more advanced and specialized features of C++. It includes chapters on advanced templates, exceptions, runtime type information, namespaces, and the C++ memory model. This section also includes a chapter on the design and implementation of generic programming libraries, as well as a chapter on the new features introduced in C++11, C++14, and C++17. The topics covered in this section are for more experienced programmers who want to take their skills to the next level and gain a deeper understanding of the language. This part is an excellent resource for programmers looking to master the most advanced features of C++.

User Reviews about the Book

Review by A. Hunt (USA)

A solid introduction that rides the line between simpler tutorials and references. Stroustrup really knows how to teach. Definitely a book you need to read with a cup of coffee and pen and paper to take notes. Stroustrup has a way of introducing things in examples such that they stay in your mind and very directly clarify the use of the thing he’s talking about. I would say that this book is a very solid introduction to C++ that is comprehensive, but not tiring. You should think about buying this book if a) you’ve already been through a web tutorial on the language and want to know a lot more, b) are refreshing your knowledge or c) if you are an ambitious C++ first timer.

“This book is a fantastic resource for anyone who wants to learn C++ or improve their C++ skills. It’s written in a clear and engaging style, and the examples and exercises are very helpful. The author does an excellent job of explaining difficult concepts in a way that’s easy to understand. I’ve been programming in C++ for years, and I still learned a lot from this book.”

Review by Sarah P.

Frequently ask Questions about “The C++ Programming Language (4th Edition)”

  1. What level of experience is this book designed for?

This book is designed for programmers of all levels, from beginners to advanced.

  1. What topics are covered in this book?

This book covers a wide range of topics in C++, including basic syntax, classes and objects, templates, standard libraries, concurrency, and more.

  1. Are there any prerequisites for reading this book?

Some programming experience is helpful, but not required. The book assumes some familiarity with programming concepts and languages.

  1. Is this book suitable for self-study?

Yes, this book is suitable for self-study. It includes numerous examples and exercises to help reinforce the concepts learned.

  1. Is this book up-to-date with the latest version of C++?

Yes, this book covers the latest version of C++, including C++11, C++14, and C++17.

  1. How does this book compare to other books on C++ programming?

“The C++ Programming Language” (4th Edition) is widely regarded as one of the best books on C++ programming. It is comprehensive, well-organized, and written by the creator of the language.

  1. Is this book available in electronic format?

Yes, this book is available in electronic format, including Kindle and PDF versions.