Every programmer should read some books to enhance their understanding about the language before the start to practice. But some of us often wonder what books we should read and in what order. Some books may not be suitable for beginners and some books may cover the similar topics. Here I summarize a C++ book list we should read.
Stage 1
"Essential C++" :
It is short but powerful and it can enhance our understanding of C++'s features.This book is specifically designed to bring you up to speed in a short amount of time. It focuses on the elements of C++ programming that you are most likely to encounter and examines features and techniques that
help solve real-world programming challenges.
"C++ primer" :
It can be a C++ dictionary and off-study reading material. It introduces the C++ standard library from the outset, drawing on its common functions and facilities to help you write useful programs without first having to master every language detail. Examples take advantage of the library to explain language features and demonstrate how to make the best use of them.
Stage 2
"Effective C++" and "More effective C++" :
Books written by Scott Meyers . They are C++ bible, you should read them again and again and understanding each item clearly. The book is organized around 55 specific guidelines, each of which describes a way to write better C++. "Exceptional C++" and "More exceptional C++" :
The puzzles and problems in Exceptional C++ not only entertain, they will help you hone your skills to become the sharpest C++ programmer you can be. Many of these problems are culled from the famous Guru of the Week feature of the Internet newsgroup comp.lang.c++.moderated, expanded and updated to conform to the official ISO/ANSI C++ Standard. Each problem is rated according to difficulty and is designed to illustrate subtle programming mistakes or design considerations.
Stage 3 "Inside the C++ object model" :
Inside the C++ Object Model focuses on the underlying mechanisms that support object-oriented programming within C++: constructor semantics,temporary eneration, support for encapsulation, inheritance, and "the virtuals"--virtual functions and virtual inheritance. This book shows how your understanding the underlying implementation models can help you code more efficiently and with greater confidence.
"The design and evolution of C++" :
The inventor of C++ presents the definitive insider's guide to the design and development of the C++ programming language. Without ommitting critical details or getting bogged down in technicalities, Stroustrup presents his unique insights into the decisions that shaped C++. Every C++ programmer will benefit from Stroustrup's explanations of the 'why's' behind C++ from the earliest features, such as the original class concept, to the latest extensions, such as new casts and explicit template instantiation.
Stage 4
"The C++ standard library" :
It is the dictionary of Standard Template Library, you can find everything about STL in this book. The C++ Standard Library provides a set of common classes and interfaces that greatly extend the core C++ language. Josuttis' book not only
provides comprehensive documentation of each library component, it also offers clearly written explanations of complex concepts, describes the practical programming details needed for effective use, and gives example after example of working code. This thoroughly up-to-date book reflects the newest elements of the C++ standard library incorporated into the full ANSI/ISO C++ language standard. In particular, the text focuses on the Standard Template Library (STL), examining containers, iterators, function objects, and STL algorithms. "Effective STL" : It is the bible of learning STL. Each of the book’s 50 guidelines is backed by Meyers’ legendary analysis and incisive examples, so you’ll learn not only what to do, but also when to do it – and why .
"Generic programming and the stl" :
Austern's book introduces you to the generic programming paradigm and to the most important instance of that paradigm--the C++ Standard Template Library (STL). This book reveals that the STL is more than a set of convenient container classes: It is also an extensible framework for generic and interoperable components. Austern explains the central ideas underlying generic programming--concepts, modeling, and refinement--and shows how these ideas lead to the fundamental concepts of the STL:
iterators, containers, and function objects.
Stage 5
"Exceptional C++ style" :
In Exceptional C++ Style , legendary C++ guru Herb Sutter presents 40 new programming scenarios designed to analyze not only the what but the why and help you find just the right balance in your software.
"C++ template" :
This book will be the next C++ classic. Although templates have been part of C++ for well over a decade, they still lead to misunderstanding, misuse, and controversy. At the same time, they are increasingly found to be powerful instruments for the development of cleaner, faster, and smarter software. This has made templates one of the hottest topics in the C++ community. This booas a tutorial. It will emphasize the practical use of templates, and will be both a complete reference as well will include real-world examples. Every working C++ programmer will need a copy of this book for his or her library.
"Modern C++ design" :
In Modern C++ Design, Andrei Alexandrescu opens new vistas for C++ programmers. Displaying extraordinary creativity and virtuosity, Alexandrescu offers a cutting-edge approach to software design that unites design patterns, generic programming, and C++, enabling programmers to achieve expressive, flexible, and highly reusable code. There is one more book I should recommend : "Thinking in C++" which is also a classical book of C++. There are also many good books which I cannot list here one by one. If you have any recommendations, please feel free to comment below.
References :
http://www.amazon.com/
http://download.csdn.net/download/yangbin762003/1712907
分享到:
相关推荐
以下是一份详细的C++程序员必读书目清单,分为五个阶段,逐步引导读者从入门到精通。 阶段1:基础入门 1. 《Essential C++》:这本书适合C++初学者,它以简洁明了的方式介绍了C++的基础概念,包括语法、函数和结构...
C++ Primer第5版,C++程序员必读系列 C++ Primer第5版是C++程序员必读系列中的经典著作,由Stanley B. Lippman、Josée Lajoie和Barbara E. Moo三位著名的C++专家共同编写。该书涵盖了C++语言的所有方面,从基本...
C++程序员面试技巧.pdf,C++程序员面试技巧.pdf
体会:这里打包了作为一个C++程序员必读的经典书籍,工作多年,这些被翻得斑驳的书籍依然带在我手边;里面资料全是英文版的,不懂英文的就别浪费积分了,希望对新手,老手有用!
本资源"《C++程序员必读常用面试题》"包含了面试中常见的问题和解答,旨在帮助C++开发者准备面试,提升技能。 1. **基础语法**:C++的基础语法包括变量声明、数据类型(如int、float、char、bool)、运算符(算术、...
在C++程序员的成长道路上,经常会遇到一些常见的误区和弯路,这些弯路不仅会浪费大量时间,还可能阻碍技能的真正提升。以下是C++程序员在成长过程中最常走的四条弯路,以及如何避免它们。 ### 弯路一:通过MS-VC++ ...
### 资深程序员必读书目详析 对于希望在IT领域有所建树的专业人士而言,选择合适的书籍进行深入学习至关重要。本文旨在基于提供的“资深程序员必读书目”信息,详细解析每一本书的重要性和适用场景,帮助读者更好地...
个人整理的c++程序员各阶段应该读的书籍 包括effective c++, more effective c++, thinking in c++, exceptional c++, more exceptional c++, c++语言的设计和演化,深度探索c++对象模型
《C++程序员UML实务手册》是一本专为C++开发者设计的指南,旨在帮助他们理解和应用统一建模语言(Unified Modeling Language,简称UML)进行软件开发。这本书由台湾的邱郁惠撰写,提供了丰富的实例和代码,使得理论...
C/C++是最能体现程序员能力的语言之一,其功能强大,在IT行业的各个方面都有大量的应用。一名优秀的C/C++程序员无疑是众多企业所渴求的。本书写作的目的就是为C/C++程序员的求职提供一些参考,让他们能够正确地面对...
《C++程序员设计》这本书是为那些希望深入理解C++编程语言、提升设计能力的程序员量身打造的宝贵资源。整合版的PDF资料包含了全面的知识点,旨在帮助读者掌握C++的核心概念,优化代码设计,并了解如何在实际项目中...
### 如何成为程序员:成为一名C++程序员的详细指南 在当今快速发展的信息技术领域,成为一名出色的C++程序员不仅意味着掌握一门编程语言,更是一项能够开启众多职业机会的关键技能。本篇文章将深入探讨如何从零基础...
然而,C++的静态类型系统和模板推导(Generic Programming,GP)可能会挑战传统的面向对象设计模式,程序员开始寻找更符合C++原生风格的解决方案,以充分利用C++的高效性。 在实践中,程序员会越来越多地使用C++...
《C++程序员设计(整合版)》是一本深入探讨C++编程技术和设计理念的综合性书籍。在C++这个强大且复杂的编程语言中,理解和掌握良好的设计原则是成为一名高效、可靠的程序员的关键。以下是对这本书中可能涵盖的一些...
C和C++程序员面试秘笈.pdf
介绍了所有学习c++的好书,想成为c++高手必须看的书。
《C/C++程序员实用大全代码》是一份涵盖了1500个实例的宝贵资源,旨在帮助程序员深入理解和熟练运用C和C++这两种编程语言。这些实例涵盖了从基础语法到高级特性的广泛范围,是学习和提升C/C++编程技能的理想资料。 ...