51 Best Books on C++ Programming

«
»
We have compiled a list of the Best Reference Books on C++ Programming, which are used by students of top universities, and colleges. This will help you choose the right book depending on if you are a beginner or an expert. Here is the complete list of C++ Programming Books with their authors, publishers, and an unbiased review of them as well as links to the Amazon website to directly purchase them. If permissible, you can also download the free PDF books on C++ Programming below.

  1. C++ Books for Beginners
  2. Programming Language C++
  3. Advanced C++ Programming Books
  4. Data Structures and Algorithms in C++
  5. Object Oriented Programming in C++
  6. Popular C++ Books
  7. C++ Programming Resources
  8. Additional Recommendations

1. C++ Books for Beginners


1."C++ A Beginner’s Guide" by Herbert schildt
“C++ A Beginner’s Guide” book covers everything starting from basic concepts like keywords, syntax, and libraries and then make headway to precocious concepts like overloading, inheritance, virtual functions, namespaces, templates, and RTTI―plus, a complete description of the Standard Template Library (STL). C++ A Beginner’s Guide also covers Data Types and operators, Control Statements, Functions, Operator overloading, Exception Handling, the I/O library, Virtual Functions, Containers, algorithms and iterators among many other concepts provided in the book by the author.

2."Object Oriented Programming with C++" by Balagurusamy E
“Object-Oriented Programming with C++” covers Object-oriented programming concepts such as control statements, objects and classes, inheritance, constructor, destructor, this, static, polymorphism, abstraction, abstract class, interface, namespace, encapsulation, etc are covered widely in the book. Other basic concepts including data types, variables, and literals are also provided in specific chapters of the book. Advanced concepts like The Standard Template Library (STL) which includes a large number of methods to manipulate Data Structure are also written in-depth in the Object-Oriented Programming with C++ book.

3."C++ Weekend Crash Course" by Stephen R Davis
“C++ Weekend Crash Course” has a plethora of important topics covered in the book. A number of them include chapters on basic introduction to programming, and writing C++ programs using Visual C++ .NET. Other basic concepts provided in multiple chapters of the book include topics like Different Types of Values, Mathematical Operations, Flow Control Commands, Functions, The Array and Introduction to Debugging etc. Intermediate concepts like Classes, Pointers to Objects, Containers of Objects, Multiple Inheritance are also provided in separate chapters of the book. Advanced concepts like polymorphism, abstraction, abstract class, interface, namespace, encapsulation are also written towards the end of the book.

4."The C++ Programming Language" by Bjarne Stroustrup
“The C++ Programming Language” provides a complete exposure to students wanting to learn the C++ language. The book provides an enhanced knowledge about C++ programming language. It guides for leveraging it’s improvements in performance, reliability and clarity. This book is written for anyone interested in learning the c++ language. This book elaborately explains the entire language and covers topics like abstraction mechanisms, standard libraries, and key design techniques. Topics such as concurrency, Regular expressions, resource management pointers, random numbers, and improved containers, General and uniform initialization, simplified for-statements, move semantics, and Unicode support are included in subsequent chapters of the book. Basic topics like type, object, scope, storage and computation fundamentals are also covered. Other topics like simplified for-statements, move semantics and lambdas are addressed. General constant expressions, control over class defaults, variadic templates, template aliases, and user-defined literals are elaborately explained in this book. Concepts such as Standard Library: containers, algorithms, iterators, utilities, strings, stream I/O, locales, numerics, C++ abstraction, including classes, class hierarchies, type, object, scope, storage, computation fundamentals are also provided in depth in this book.

5."Programming in C++" by Mahapatra P B
“Programming in C++” starts by introducing basic concepts like Fundamental of C++ Programs, Mathematical and Relational expressions, Flow Control in C++, Loops in C++ and Functions in C++ to the readers. It then proceeds forward to intermediate concepts like Structures and Unions, Data—Its Scope and Visibility, Preprocessor, Objects and Classes, Arrays in C++, Pointers in C++, Inheritance, Pointers to Objects and Class Members, Operator Overloading etc in the subsequent chapters of the topic. In the last part of the book advanced topics like Input / Output Preliminaries, File-Input/Output, Virtual Function, Templates, Exception Handling and Introduction to the Stl are covered.


2. Programming Language C++

1."Programming in C++" by Kamthane
“Programming in C++” Book Review: This book is the revised version of the C++ programming language containing relevant code as well as a plethora of examples to practise the coding examples as well as solving the exercises present at the end of each chapter. Basic concepts like different types of values, mathematical operators, flow control commands, functions, and arrays are provided in the initial chapters. Which is preceded by topics like namespaces, templates, and RTTI―plus and Standard Template Library (STL) and many more in the later chapters of the book. The book is suitable for students. It consists of various examples, solved and unsolved questions. This book provides basic fundamentals to in-depth knowledge of C++ programming language.

2."Cracking the C, C++ and Java Interview" by S G Ganesh and K U Subhash
“Cracking the C, C++ and Java Interview” Book Review: This book is basically a guide to graduate students preparing for IT interviews. It consists of mcqs, programming aptitude and programming theory. It includes additional information on suggested reading and entry level certification courses.

3."The C++ Programming Language - Anna University" by Bjarne Stroustrup
4."C++: The Complete Reference, 4th Edition" by Herbert Schildt
“C++: The Complete Reference, 4th Edition” Book Review: This book includes a complete and comprehensive knowledge of C++ language. It contains from basic concepts to in-depth information about the programming language. It is suitable for all programmers using C++. It includes data type and operators, control statements, functions and virtual functions.

5."C++ Programming Language" by D S Malik - Creighton University
6."Programming: Principles and Practice Using C++" by Bjarne Stroustrup
“Programming: Principles and Practice Using C++” Book Review: This book is designed for beginners who have no idea about programming. It is also useful to practitioners and advanced students in programming. The book is a general introduction to programming. It includes objective based programming. This book contains basic principles of programming with advanced concepts.

advertisement
advertisement
7."Computer Programming with C++" by Kunal Pimparkhede
“Computer Programming with C++” Book Review: This book is helpful to undergraduate students of computer science and engineering. The book provides basic and in-depth information of C and C++ programming languages. It uses a practical oriented approach for understanding theoretical concepts. It includes examples, solved and unsolved questions and case studies.

8."Programming with C++" by D Ravichandran
9."SCHAUM'S OUTLINE OF DATA STRUCTURES WITH C++" by John Hubbard
“SCHAUM’S OUTLINE OF DATA STRUCTURES WITH C++” Book Review: This book consists of the latest study guide on data structures. It simplifies and clears difficult and advanced concepts of data structures.

10."Beginning C++ Game Programming" by John Horton
“Beginning C++ Game Programming” Book Review: This book is designed for programmers wanting to develop games and engage with using C++. It provides information of C++ from beginning basics such as variables, loops and functions to build games. It also includes advanced C++ topics such as classes, inheritance and references to spawn and control thousands of enemies.

11."C++ Programming Language" by N B L Mathur


3. Advanced C++ Programming Books


1."Object Oriented Programming in C++" by Lafore
“Object Oriented Programming in C++” covers basic concepts including data types, variables, and literal. This book avails an effective approach to the study of basic Object Oriented Programming. It serves C++ Professionals, and students. The students of graduate and postgraduate courses in computer engineering. Advanced concepts like The Standard Template Library (STL), as well as Object-Oriented programming methodologies, are illustrated using code examples in the book. This book is written by keeping in mind the latest C++ ANSI standard and relevant examples are also provided for a better grasp of knowledge. It offers a wide range of topics like C++, arrays, structures, unions. This book also provides bit fields, functions, pointers, template, exception handling. It also includes file handling and graphics with several examples.


2."Object-Oriented Programming with C++" by A K Sharma
“Object-Oriented Programming with C++” is for students studying in the first semester of B.tech Computer Science or BSc or CS course. Advanced topics like polymorphism, abstraction, abstract class, interface, namespace, encapsulation are covered extensively in the book. Other important topics that are covered in the book include current practices and standards for writing better code. A variety of examples and questions have been provided throughout the book to ease the understanding of the reader. It also deals with the creation and manipulation of OOP concepts using C++.

3."Programming in C++" by M T Somashekara
“Programming in C++” covers both the concepts in a precise as well as in-depth manner. C++ is a general-purpose and high-level programming language that contains both structural as well as Object-oriented Programming in detail. Important topics covered in the book include programs for each concept to illustrate its significance and scope, a complete explanation of each program with an emphasis on its core segment as well as there are a plethora of chapter-end reviews as well as programming exercises.

4."Thinking in C++" by ECKEL
“Thinking in C++” has a plethora of important topics covered on basic introduction to programming as well as coding C++ using Visual C++ .NET has been introduced in the book. Other concepts provided in multiple chapters of the book include topics like Different Types of Values, Mathematical Operations, Functions, the Array and Introduction to Debugging, etc. Concepts such as Classes, Pointers to Objects, Containers of Objects, Multiple Inheritance are also covered in the book. Advanced concepts like polymorphism, abstraction, abstract class, interface, namespace, encapsulation are also written in the later chapters.


4. Data Structures and Algorithms in C++

1."Data Structure and Algorithm in C++" by Adam Drozdek
“Data Structure and Algorithm in C++” Book Review: This book provides a relation between data structures and algorithms. This book also covers various topics like treaps, k-d trees, k-d B trees and generational garbage collection. It also consists of additional advanced techniques such as methods and also covers a new hashing technique. This book is for anyone who wants to understand DS Algo concepts. This book provides both the theoretical and practical knowledge by employing useful case studies, C++ code examples, diagrams and tables. It provides modern applications to the OOP’s concepts. It also provides a valuable insight by including interpreters, symbolic computation and file processing.

advertisement
2."Data Structures and Algorithms in C++" by Michael T Goodrich and Roberto Tamassia
“Data Structures and Algorithms in C++” Book Review: This book provides an introduction to data structures and algorithms, with their analysis and implementation. It provides an introduction to OOP design with C++ and also includes class inheritance through classes and function templates. This book finds its use in the courses CS102 (I/O/B versions), CS103 (I/O/B versions), CS111 (A version), and CS112 (A/I/O/F/H versions) and for anyone who wants to understand DS Algo. concepts. Each data structure is implemented using ADT’s. This provides implementation to all these data structures through the coding of these designs in C++.

3."Data structures and Algorithm Analysis in C++" by Weiss
“Data Structures and Algorithm Analysis in C++” Book Review: This book covers all the advanced Data structures concepts like binary heaps, sorting and NP- Completeness. This also devotes an entire chapter to a detailed analysis on advanced data structures and their implementation. This book is mainly for anyone who wants to learn DS Algo. concepts and enhance their programming skills. This book requires a prerequisite knowledge of OOP concepts, recursion and a medium level programming skills. The reader is also required to have a knowledge in discrete math. Every topic provides illustrations and example figures.

4."Algorithms in C++: Fundamentals, Data Structures, Sorting, Searching" by Sedgewick
“Algorithms in C++: Fundamentals, Data Structures, Sorting, Searching” Book Review: This book provides a concise and detailed information and explanation of each algorithm by employing the use of illustrations and figures. This book covers arrays, linked lists, strings, trees and other Data Structures. It also covers ADT’S and OOP concepts. It discusses over 100 Algos. for sorting, selection, priority queue and symbol table. It provides newer implementation of binomial queues, multiway radix sorting, randomized BST’s, skip lists, B trees, etc. This book can be referred to by anyone trying to learn Data Structures and Algorithms concepts. It also has approximately 1000 exercises to understand the concepts in depth.

5."Schaum's Outline of Fundamentals of Computing with C++" by John R Hubbard
“Schaum’s Outline of Fundamentals of Computing with C++” Book Review: This book covers various topics like data abstraction, recursion, searching and sorting algorithms. It also covers standard C++ container classes and other complex concepts. Every concept is simplified by using illustrations and examples. This also provides a large number of solved problems with a lot of practice problems after every concept. This book is for anyone trying to take an introduction to computer science.

6."Data Structures and Algorithm Analysis in C++ - Anna University" by Mark Allen Weiss
“Data Structures and Algorithm Analysis in C++ – Anna University” Book Review: This book covers extensively on binary heaps, sorting, NP- completeness. It also discusses stacks, queues and lists. An entire chapter is devoted to detailed analysis of advanced data structures and algorithms like Fibonacci Heap. The book provides illustrations and examples of various DS Algo concepts and this book can be referred to by anyone taking an introduction to various concepts of Data Structures and Algorithms.

advertisement
7."Data Structures and Algorithms in C++" by Adam Drozdek-Duquesne
“Data Structures and Algorithms in C++” Book Review: This book illustrates how some Data Structures and Algorithms can be used with the case studies mentioned. It also gives a theoretical analysis of various algorithms. This book covers topics like space time complexities, OOP’S concepts, linked lists, stacks and queues. This book also discusses recursion, binary and multiway trees, graphs, sorting and many more topics. It also provides examples of C++ code while covering the concepts. This book is for anyone taking an introduction to Computer Science and DS Algo. concepts.

8."Data Structures, Algorithms and Applications in C++" by S Vaidyanathan
“Data Structures, Algorithms and Applications in C++” Book Review: This book covers mainly the concepts of Object Oriented Programming Language and also the emerging ones. This book also presents various mathematical concepts while analysing various data structures and algorithms. This book also provides various illustrations and examples of various Data structures and algorithms. This book is for undergraduate and postgraduate students of India pursuing Computer Science Engineering.

9."Data Structures and Algorithms in C++: Pocket Primer (Computer Science)" by Lee Wittenberg
“Data Structures and Algorithms in C++: Pocket Primer (Computer Science)” Book Review: This book covers topics like algorithmic analysis, linked lists, stacks and queues and recursion. It also analyses the concepts of Binary trees, Sorting, Hashing and Graphs. It uses the standard C++ templates for illustrating the important concepts and presents very simple sample code. This book is for undergraduate students pursuing a course in Data Structures or by developers. This book covers only essential concepts without introducing the uncommon and very difficult algorithms.

10."Data Structures in C++" by Kutty and Padhya
“Data Structures in C++” Book Review: This book provides a comprehensive introduction to data structures. It covers various OOPS concepts in C++ language.The book provides analysis and explanation of various data structures with illustration and examples. This book is for anyone taking an introduction to data structures.

11."The C++ Standard Library: A Tutorial and Reference" by Nicolai M Josuttis
“The C++ Standard Library: A Tutorial and Reference” Book Review: This book is written for anyone interested in learning the c++ language. This book elaborately explains all the C++ libraries including concurrency, tuples, clocks and timers and many more. Explanation to each library has an introduction along with its purpose and design. Clear examples and complex concepts are also included in this book. This book helps the reader understand the practical programming details and the traps and pitfalls of the language. Focus is given to the Standard Template Library (STL), examining containers, iterators, function objects, and STL algorithms.

12."Effective C++: 55 Specific Ways to Improve Your Programs and Designs" by Scott Meyers
13."Data Structures Using C++" by D S Malik
“Data Structures Using C++” Book Review: This book is written for computer science students and people interested in learning about data structures. This book elaborates on advanced topics in C++ like linked lists and standard template library. This book also contains visual diagrams, examples and programming examples for better understanding. At the end of each chapter a set of robust exercises are included for the reader to test his/her level of understanding of the subject.

14."Essential C++" by Stanley B Lippman
“Essential C++” Book Review: This book is written for computer science students and people interested in C++ language. This book covers basic topics like object-based, and object-oriented programming. This book also contains many examples and complex programming problems along with answers to the problem which helps understand the concept and purpose of learning the language.

15."Data Structures with C++ Using STL" by William H Ford
“Data Structures with C++ Using STL” Book Review: This book is written for computer science students and people interested in data structures. Topics like classical algorithms, Big-O notation and abstract data types are elaborately explained in this book. This book contains numerous examples and complete programs. This book also provides an early and accessible introduction to templates and iterators.

16."Introduction to Algorithms" by Thomas H Cormen
“Introduction to Algorithms” Book Review: This book is written for computer science students and people interested in algorithms. A broad range of algorithms are covered in depth. Topics like van Emde Boas trees and multithreaded algorithms are covered in this book. Dynamic programming and greedy algorithms are also explained. This book also contains numerous exercises and problems for the readers to test their level of understanding.

17."Data Structures & Algorithm Analysis in C++" by Mark A Weiss
“Data Structures & Algorithm Analysis in C++” Book Review: This book is written for computer science students and people interested in algorithms and data structures. This book incorporates the Standard Template Library throughout the text. This book also covers important topics like lists, stacks, queues, and trees. An entire chapter is dedicated to amortized analysis and advanced data structures such as the Fibonacci heap. This book also contains figures and examples illustrating the algorithms and helps the reader to do an in-depth analysis on each type of algorithm.
18."Problem Solving in Data Structures and Algorithms Using C++: Programming Interview Guide" by Hemant Jain
“Problem Solving in Data Structures and Algorithms Using C++: Programming Interview Guide” Book Review: This book is written for computer science students and people interested in algorithms and data structures. It helps the reader to view the subject from an interview preparation point of view. This book contains many problems along with their solutions and explanations. Topics like complexity analysis, sorting & searching are covered in this book. Data structures and algorithms of linked list, stack, queue, trees, heap, hash table and graphs are clearly explained. Algorithm analysis of brute force algorithms, greedy algorithms, divide & conquer algorithms, dynamic programming, and backtracking is done. System Design is covered in the last chapter to help the reader solve the design problems using a systematic approach.

19."Algorithms: C++: Data Structures, Automation and Problem Solving" by Code Well Academy and R M Z Trigo
20."Computer Science With C++ Concepts File Handling Data Structures - Vol. I and II" by Sumita Arora


5. Object Oriented Programming in C++

1."Object Oriented Programming with C++" by Balagurusamy
“Object Oriented Programming in C++” Book Review: This book presents the basic principles of the C++ programming language. It provides increasingly advanced topics while demonstrating the OOP methodology. This book reflects the latest ANSI C++ standard. It involves the thoroughly revised examples to reflect current practices and standards. This study includes suggested solutions to the programming projects at the end of each chapter. These are made available to instructors at recognized educational institutions.

3."Object-Oriented Programming in C++" by Rajesh K Shukla
“Object Oriented Programming in C++” Book Review: This book covers simple programming examples. It provides full-fledged object-oriented applications, quick, real-world examples, and more. This book offers the most current features of the ANSI/ISO C++ standard. It applies object-oriented programming. This study assumes no C programming experience. It increases the familiarity with basic programming concepts.

4."Object Oriented Programming in C++" by Robert Lafore
5."Object Oriented Programming in - C++" by M Chithik Raja and V S Balasubramaniyan
6."Test Your Skills in Object Oriented Programming with C++" by R S Salaria
“Test Your Skills in Object Oriented Programming with C++” Book Review: This book provides an understanding of various object-oriented programming concepts. It presents their implementation using the C ++ language. This plays a key role in development of quality software. This book let’s us test / evaluate our skills in object-oriented programming. It also provides the concepts and their implementation using C ++ language. This book serves the students of computer science and information technology.

7."Object Oriented Programming In C++" by Barkakati
“Object Oriented Programming In C++” Book Review: This book presents the fundamental concepts of Object-Oriented Programming (OOP). It provides the process to apply OOP techniques using the C ++ programming language. This book describes the basic concepts of data abstraction, inheritance and polymorphism. The in-depth examples provided in this book illustrate real-world applications. It helps in learning to create and use objects while developing viable software applications. This book also covers sample programs for top PC environments. These include MS-DOS, Windows and the X Window System.

8."An Introduction to Object-Oriented Programming in C++: with Applications in Computer Graphics" by Graham M Seed
“An Introduction to Object-Oriented Programming in C++: with Applications in Computer Graphics” Book Review: This book provides the art of programming in C++. It covers the topics ranging from simple C++ programmes to programme features. These features include classes, templates, and namespaces. This book places an emphasis on developing a good programming technique. It also demonstrates when and how to use the advanced features of C++. This book covers the Standard Template Library (STL), a major addition to the ANSI C++ standard. It provides a full coverage of all the main topics of C++. These topics include templates and practical tools developed for object-oriented computer graphics programming.

9."Object-oriented Programming in C++" by Nabajyoti Barkakati
10."Object-oriented Programming in C++" by Tatyana Sopronyuk and Nonna Shulga
11."C++ by Example : Object-Oriented Analysis, Design & Programming" by Len Dorfman
“C++ by Example : Object-Oriented Analysis, Design & Programming” Book Review: This book is an introduction to object oriented programming using c++ language. This book consists lots of examples to make the reader understand well. It was based on Dorfman’s c++ course at Hofstra university, USA. It contains 90% code and 10% commentary on the code.

12."Numerical Recipes in C++" by W H Press and B P Flannery
Book Review: This book begins with mathematical foundations as well as computer science basics and further goes to working routines. The book contains 400+ routines related to numerical recipes and adopts object oriented pattern for demonstrating scientific applications. The book contains new chapters on Gaussian mixture models, hierarchical clustering and support vector machines. The book also includes interior point methods for linear programming, spectral methods for partial differential equations and concepts on linear algebra, interpolation, special functions, random numbers, nonlinear equation sets and many more.


6. Popular C++ Books

1. C++ Primer Book
2. Effective Modern C++ Book
3. Programming Principle and Practice using C++ Book
4. C++ for Dummies Book
5. The C Programming Language 2nd Edition Book
6. Modern C++ Design Book
7. More Effective C++ Book

You can buy these additional reference books on C++ Programming from “Amazon USA” OR “Amazon India”.



We have put a lot of effort into researching the best books on C++ Programming and came out with a recommended list and their reviews. If any more book needs to be added to this list, please email us. We are working on free pdf downloads for books on C++ Programming and will publish the download link here. Fill out this C++ Programming books pdf download" request form for download notification.

advertisement
advertisement
Subscribe to our Newsletters (Subject-wise). Participate in the Sanfoundry Certification contest to get free Certificate of Merit. Join our social networks below and stay updated with latest contests, videos, internships and jobs!

Youtube | Telegram | LinkedIn | Instagram | Facebook | Twitter | Pinterest
Manish Bhojasia - Founder & CTO at Sanfoundry
Manish Bhojasia, a technology veteran with 20+ years @ Cisco & Wipro, is Founder and CTO at Sanfoundry. He lives in Bangalore, and focuses on development of Linux Kernel, SAN Technologies, Advanced C, Data Structures & Alogrithms. Stay connected with him at LinkedIn.

Subscribe to his free Masterclasses at Youtube & technical discussions at Telegram SanfoundryClasses.