We are recommending best 10 C++ programming language books which helps to learn the programming language fundamentals. We selected books based on our experience and explained the factors involved with each book selection. We didn’t rate any book and each book has good topics coverage. We have a lot of C++ programming material which is freely available on the internet. But, when the candidate starts reading from the internet, they may deviate from learning the programming language and may not be able to cover all the topics. Books help to learn the programming language in a focused way without much disturbance.

1) The C++ Programming Language, 4th Edition by Stroustrup

The C++ Programming Language book is a world’s most trusted and widely used guide. It has been comprehensively updated for C++11 and C++14 standard. Stroustrup explained C++11 language futures, standard library, and key design techniques. It offers definitive guidance for leveraging improvements in performance, reliability and clarity. This book may require basic programming knowledge as pre-requirement. Stroustrup’s “Programming: Principles and Practice Using C++” may be the good choice for beginner level programmer.

Author home page: http://www.stroustrup.com/4th.html

2) Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions and More Exceptional C++: 40 New Engineering Puzzles, Programming Problems, and Solutions by Herb Sutter

Exceptional C++ and more Exceptional C++ explains the concept using the puzzles and programming challenges. It explains using different types of approaches and finally give the solution to each problem. Most of the problems and solutions selected from the guru of the week C++ internet newsgroup. It explains template programming, exceptions, multithreaded environment programming, memory management and optimization in C++ programming languages. The readers can read any topic without read from start to end. It doesn’t update with C++ 11 or C++14 standard.

3) Modern C++ Design: Generic Programming and Design Patterns Applied 1st Edition by Andrei Alexandrescu

Modern C++ design explains the design patterns, generic programming with good design practices. It helps to build flexible, reusable software components. Andrei describes the specific C++ techniques and features that are used in building generic components and goes on to implement industrial strength generic components for real-world applications

Author home page: http://erdani.com

4) C++ Coding Standards: 101 Rules, Guidelines, and Best Practices 1st Edition by Andrei Alexandrescu

The C++ coding standard gives the valuable guidelines, best practices for writing high-quality, industrial-software C++ code. Each item explained with title, summary, discussion, example and reference. The readers can read any particular topic without read from start to end. It doesn’t update with C++ 11 or C++14 standard. The book won the Jolt Productivity Award at the Software Development Conference in 2005.

Author home page: http://erdani.com

5) Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14 by Scott Meyers

Effective Modern C++ book explains the best practices in C++11 and C++14 futures. It covers the topics like different types of reference, explain the correct and effective way of use lambda expression. The challenge is learning to use those features effectively. It gives the guide to develop software correct, efficient, maintainable, and portable manner. It describes how to write truly great software using C++11 and C++14.

Author home page: http://www.aristeia.com

6) C++ Primer (5th Edition) 5th Edition by Stanley B. Lippman, Josée Lajoie, Barbara E. Moo

C++ Primer fifth edition upgraded with C++ 11 standard. It introduces the language from new language futures, C++ core concepts, and standard template library. It helps to learn the language through the programming examples, explain the rationale behind the rules. If the programmer wants learn the intermediate to advanced level of C++ programming language, they can choose C++ primer or “The C++ Programming Language, 4th Edition by Stroustrup” book.

Author home page: http://blogs.msdn.com/b/slippman

7) Accelerated C++: Practical Programming by Example by Andrew Koenig

Accelerated C++’s helps to write better and more powerful software using C++ language. It explains the concepts from under the hood including the memory management, exception, and template programming. Accelerated C++ explain the concepts clearly from programming language fundamentals to advanced concepts like polymorphism, virtual functions. It doesn’t upgrade to C++ 11 standard.

Author home page: https://chessprogramming.wikispaces.com/Andrew+Koenig

8) The C++ Standard Library: A Tutorial and Reference (2nd Edition) 2nd Edition by Nicolai M. Josuttis

The C++ Standard Library: A Tutorial and Reference, Second Edition, describes this library as now incorporated into the new ANSI/ISO C++ language standard (C++11). The book provides comprehensive documentation of each library component, including an introduction to its purpose and design; clearly written explanations of complex concepts; the practical programming details needed for effective use; traps and pitfalls; the exact signature and definition of the most important classes and functions; and numerous examples of working code.

Author home page: http://www.josuttis.com/libbook

9) Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition) 3rd Edition by Scott Meyers

Effective C++ book explain the best practices for developing the software components using C++ programming language. It does not explain the programming language fundamentals. The effective C++ and more effective C++ explain the core concepts in C++ programming language using different items. Each item explains with problem or issue, source code and explain the solution. The developer can read any item from this book and understand the concepts. It doesn’t upgrade to C++11. But, the Modern effective C++ covers the C++ 11 futures.

Author home page: http://www.aristeia.com

10) Programming: Principles and Practice Using C++ (2nd Edition) by Bjarne Stroustrup

Bjarne Stroustrup is the designer and original implementer of C++. The book explains the basic programming language elements who do not know about the programming language. It upgraded to C++ 11 and C++14 standard. It explains the object-oriented programming, generic programming for college students.

Author home page: http://www.stroustrup.com/programming.html

Reference