Choosing a book:
Choosing the right book for learning C++ or any other subject is quite important, especially since C++ and other technical books tend to be rather expensive. You definitely want to read reviews and, if possible, excerpts from the book before buying it. Try
these tips on book buying, check against
this list of books to avoid, and read the
ACCU Book Reviews.
Below is a list of books that are often recommended by #C++ regulars.
Categories:
C and C++
|
| The C++ Programming Language |
| Author: | Bjarne Stroustrup |
| ISBN: | 0201889544 |
| Publisher: | Addison-Wesley |
| Order: |
Amazon USA |
Amazon UK |
Bookpool |
|
Written by Bjarne Stroustrup, the creator of C++, this book gives a detailed, complete overview of the C++ programming language, its constructs, usage, and what constitutes well-formed and well-defined C++ code.
|
| The Design and Evolution of C++ |
| Author: | Bjarne Stroustrup |
| ISBN: | 0201543303 |
| Publisher: | Addison-Wesley |
| Order: |
Amazon USA |
Amazon UK |
Bookpool |
|
This is the closest equivalent for C++ to the C Standard's accompanying rationale, D&E gives some history of the evolution of C++ from its infancy through to the ARM and provides many details of why C++ is the way it is, and of some ideas which were considered and rejected. While D&E does not cover ISO Standard C++, it is the best available guide to how C++ came to be the way it is.
|
| Accelerated C++ |
| Author: | Andrew Koenig and Barbara E. Moo |
| ISBN: | 020170353X |
| Publisher: | Addison-Wesley |
| Order: |
Amazon USA |
Amazon UK |
Bookpool |
|
This is an excellent book to teach C++ to someone who already has a basic familiarity with programming. It teaches standard C++ and is generally agreed by most #C++ regulars as being the definitive "teaching" text for people who already know another programming language.
|
| The C Programming Language |
| Author: | Brian Kernighan, Dennis Ritchie |
| ISBN: | 0131103628 |
| Publisher: | Prentice Hall |
| Order: |
Amazon USA |
Amazon UK |
Bookpool |
|
Written by the original creators of the C programming language, The C Programming Language is a terse, factual read. An absolute must-have for any C/C++ programmer because frequent references are made to "The K&R book". Not suitable for beginners with no programming experience.
|
| C++ Primer (4th Ed.) |
| Author: | Stanley Lippman, Josee Lajoie, Barbara E. Moo |
| ISBN: | 0201721481 |
| Publisher: | Addison-Wesley |
| Order: |
Amazon USA |
Amazon UK |
Bookpool |
|
This book is a comprehensive examination of the C++ language, and is written by established experts in the C++ industry. Many consider this book to be the most thorough, complete title in its genre. It is often recommended as a first book for learning C++.
This book contains examples on how to account for common issues faced when writing C++ programs, such as creation of temporaries, iterator invalidation, and other gotchas.
This book goes more in depth, following the same format as the first book, "Effective C++." This book explores issues such as exception safety, dynamic memory allocation, and more.
One of the best books on generic programming, this book explores several facets of C++ design that can be improved using generic programming and policy-based object design. Chapters of this book are dedicated to the Singleton pattern, smart pointers, abstract factory classes, and more.
This book contains many of the items found at the
GOTW site. These are laid out in an easy to read format, and includes several examples not found on that site. This is a good book to read from cover to cover, and refer to later as a reference for topics such as exception safety and solid commit-rollback assignment semantics.
This book goes more in depth, featuring topics such as the C++ standard library, optimization, inheritance and memory management.
|
| C++ Templates |
| Author: | David Vandevoorde, Nicolai M. Josuttis |
| ISBN: | 0201734842 |
| Publisher: | Addison-Wesley |
| Order: |
Amazon USA |
Amazon UK |
Bookpool |
|
This book is an excellent tutorial and detailed reference on the C++ template system. It covers techniques such as static polymorphism, policies, and template metaprogramming.
This book goes beyond learning the syntax and best practices of writing C++ code, and pushes the reader to really understand what the various aspects of the language are doing. Like the other Sutter books, this is written as a large collection of smallish items, some of which can be found in the Guru-of-the-week collection.
|
| C++ Coding Standards |
| Author: | Herb Sutter, Andrei Alexandrescu |
| ISBN: | 0321113586 |
| Publisher: | Addison-Wesley |
| Order: |
Amazon USA |
Amazon UK |
Bookpool |
|
Many people read Herb Sutter's
Guru-of-the-week columns, and many have read Andrei Alexandrescu's
Modern C++ Design or used his Loki library. Now they have teamed up to deliver a book on best practices for writing C++, based on their own considerable experience and on the wealth of experience from the C++ community as a whole.
The C++ Standard Library
Covers a wide range of basics on how to use the STL to perform common programming tasks. Demonstrates why many of the C++ Standard Library algorithms and data structures are better suited for a wide range of tasks than rolling your own, and also demonstrates exceptions to this rule, where it is preferable to write your own.
The best book available for learning the C++ standard library. Covers containers, strings, algorithms, and more.
|
| Generic Programming and the STL |
| Author: | Matthew H. Austern |
| ISBN: | 0201309564 |
| Publisher: | Addison-Wesley |
| Order: |
Amazon USA |
Amazon UK |
Bookpool |
|
Very good buildup of STL; it focuses on concepts first and containers last. The book is a heavily annotated outgrowth from the SGI STL docs (which he also wrote). This book is probablya bit more formal than other standard library books.
|
| Standard C++ Iostreams and Locales |
| Author: | Angelica Langer, Klaus Kreft |
| ISBN: | 0201183951 |
| Publisher: | Addison-Wesley |
| Order: |
Amazon USA |
Amazon UK |
Bookpool |
|
This book covers IOStreams and Locales in thorough detail. It is written in such a style that a beginner who has been acquainted with the STL through some programming experience or through the book above should be able to keep up with the pace of this book. Experienced STL users will, however, appreciate this book's detail in explaining the interaction between IOStreams, locales, and performing formatted and unformatted I/O operations, as well as extending the template classes for custom applications.
Windows
|
| Programming Windows, the Definintive Guide to the Win32 API |
| Author: | Charles Petzold |
| ISBN: | 157231995X |
| Publisher: | Microsoft Press |
| Order: |
Amazon USA |
Amazon UK |
Bookpool |
|
The must-have Win32 book for every windows programmer
The must-have MFC book for every windows MFC programmer
|
| Programming Applications for Microsoft Windows |
| Author: | Jeffrey Richter |
| ISBN: | 1572319968 |
| Publisher: | Microsoft Press |
| Order: |
Amazon USA |
Amazon UK |
Bookpool |
|
Covers windows programming topics not specifically related to GUI programming, such as threads, memory, kernel objects, DLLs, and system APIs.
Algorithms and Theory
|
| Introduction to Algorithms |
| Author: | Thomas H. Cormen, Charles E. Liesserson, Ronald L. Rivest |
| ISBN: | 0262032937 |
| Publisher: | MIT Press |
| Order: |
Amazon USA |
Amazon UK |
Bookpool |
|
The de facto standard algorithm book, this book contains derivation and analysis of common algorithms and data structures such as hash tables, red black trees, and directed graphs.
|
| The Art of Computer Programming, Vol. 1-3 |
| Author: | Donald E. Knuth |
| ISBN: | 0201485419 |
| Publisher: | Addison-Wesley |
| Order: |
Amazon USA |
Amazon UK |
Bookpool |
|
This is the master of all algorithm and computer theory books, written by one of the pillars of the computer science community. This set is very tough reading, but very rewarding as well.
Compilers
This book explains how to use lex and yacc to create a lexer and a parser to recognize and parse a language based on a language specification.
|
| Compilers (The Dragon Book) |
| Author: | Alfred V. Aho, Ravi Sethi, Jeffrey D. Ullman |
| ISBN: | 0201100886 |
| Publisher: | Addison-Wesley |
| Order: |
Amazon USA |
Amazon UK |
Bookpool |
|
The standard compiler book, discusses all aspects of compiler creation, from writing a lexer and parser, to checking code semantics and writing a code generator. Definitely a must for anyone who wants to write a compiler.