(i) Language introduction:
"C + + Primer"
The latest version: the third edition (the fourth edition of the foreign shelves, some domestic online bookstores are also in the booking)
Suitable for rich C experience, lack of C + + experience. But personally I have always thought that this book with too strong C-language traces, for C + + learning is not necessarily a good thing.
"The C + + programming Language"/"C + + programming language"
Latest Version: Third Edition special edition
Abbreviated to TC++PL, with extensive experience in other languages. (It is also known as "tcpl", but it needs to be distinguished from another "the C Programmer Language")
"Essential C + +"
"Accelerated C + +"
These two are thin and are good choices. "Accelerated C + +" I did not read, from all aspects of the evaluation, it is highly recommended.
The above several books have the corresponding Chinese version, and the quality of translation is good. The above books may not all need to be read, but anyway, tc++pl should be read.
(b) Advanced A:
This route focuses on the language itself
"Effective C + +"
The latest Version: Second Edition (the third version of the foreign shelves, some domestic online bookstores are also in the booking)
Referred to as EC. C + + programmer must read! Many times, we say that the C + + Bible does not refer to TC++PL, but to this one. "The Pragmatic Programmer" wrote: "Once you find yourself involved in the development of C + + projects, run (don't walk) to the bookstore to buy Scott Mayer's effective C + +, and perhaps more effective c+ + "".
"C + + Coding standards:101 rules, guidelines, and best practices"/C + + programming specification
Personally, this book should be a necessary desk book for C + + programmers. Almost effective series and exceptional series are summarized here. The latest templates, unusual industry experience are here to reflect. The only possible flaw is that for a novice, the question of "Why do this" is not explained enough.
My view is: If you do not understand the terms, memory, and do, if you understand the terms, I guess you will agree with the view of the book. I think the contents of this book will not go out of date until at least 2009, and people will be widely read about the 101 commandments it has set.
Still don't know his abbreviation, perhaps "101" will become a candidate?
Referring to "effective C + +", then another three books one by one surfaced:
"More effective C + +"
"Exceptional C + +"
"More exceptional C + +".
The new book "Exceptional C + + Style" is also a good book to read.
None of the above books should be spared.
Individuals suggest that the above books be read sequentially. and read these books over and over again in the future.
(c) Advanced B:
This route focuses on the library.
The standard library of C + +/C + + standards Library-Self-study tutorial and reference manual
Have you ever heard of STL? This book teaches you the most basic, and most important, use of STL. This book should be a must-read.
"Effective STL"
The use of STL is not enough, you must also know when to choose what STL components, this is the STL use must read.
"Generic programming and the stl:using and extending the C + + standard Template Library"/"Generics Programming and STL".
This book is more theoretical, but really rigorous, and not very difficult to understand. It would be very important to understand the interpretation of concept.
"C + + STL"
This is not about using the library, but about how the library is implemented. The stomach is bad, need to absorb slowly.
The book of this course is still recommended in order to read.
Advanced A, Advanced B two routes should be parallel.
Other advanced Reference Books
To raise these reference books, only to avoid controversy, but also to broaden the horizons, I did not read all the full.
"Thinking in C + +"/"C + + programming Ideas"
The book and its Chinese version of the rumors are good or bad, have not looked carefully, do not evaluate, if there is interest, may wish to try the book.
The following books are basically about language itself and can be read in the following order.
"C + + must know"
If it had been a year earlier, the book would have been heavyweight, but it had been covered by 101 and exceptional C + + Style.
"C + + gotchas:avoiding Common problems in Coding and design"/C + + programming trap
This is another book that I have never read, and is well received.
"STL Source Code Analysis"
When I got the book, I was "borrowed" so far that I had not seen it. The friend who has read this book can give a proper evaluation.
Senior:
"The design and Evolution of C + +"/"C + + language parties ' designs and evolutions"
Short of d&e, the content is not difficult, Bjarne book, only this, it is worth reading.
Some time ago, the interactive network has 8 yuan A (RMB) sale of this book, now seems to be gone.
"Inside the C + + object Model"/"Deep Exploration of C + + objects models"
C programmers will feel that C + + is not mysterious after reading.
"C + + Template"
Before reading the source code of STL, boost or Loki, please read this book carefully, it can alleviate some of the trouble of Reading. This book is about the authority of the C + + template.
"Modern C + + Design Generic programming and Design Patterns Applied"/"new thinking of C + +-application of generic programming and designing patterns"
Referred to as MCD. Before reading MCD, it is recommended that you read the C + + Template first.
"Object disclosure: Java, Eiffel and C + +"
Are you dissatisfied with C + +? This book can partially help you to accomplish your complaint goals. Maybe it can also make you not superstitious C + +.
Finally, a copy of the C + + standard document should also be chewed.
There are some books that cannot be simply attributed to C + +, nor can it be mastered in pure book learning. This is the book "Design Patterns"/"Designing Mode".
all of the above books, either talk about the C + + language itself, or talk about STL, or both (of course, strictly speaking the STL is a very important part of the C + + language). Occasionally, articles in some books may also involve practical works. These books are not the whole of C + + software development, but they are important. Reading these books does not necessarily require a lot of energy, sometimes it can be difficult, but sometimes it can be very fast.
Finally, programming language is not the whole of computer science and technology, especially for students in school, lay a good foundation, broaden the field of vision is very important.
**************************************************************
There are several books that need to be explained.
"Multi-paradigm Design for C + +", the book is a bit old, perhaps in the publishing era is still very good, and now, such a book can be completely covered by the recommended bibliography. Most importantly, some of the ideas in the book are out of date today.
"C + + programming Idioms" This is a thunderclap piercing book, unfortunately, this book was published in 1992, the book is a lot of content, has been later works covered, and more comprehensive and rigorous. In addition, the book's understanding of C + +, in today's view, is outdated or even a wrong point of view. Therefore, only for those who already know C + + reference.
"In Layman's MFC"
This is a book that tells you how to use the MFC library. Today, MFC is declining, and the C + + technology used by MFC has always been criticized. The book is really good, but learning C + + does not necessarily have to learn MFC. Therefore, this book is not a must for learning C + +.
The Art of C + +
To be honest, I have a general opinion of the book. Moreover, "Art" is a misnomer, translated into "C + + combat", to be more accurate.
"Large-scale C + + programming"
This is an important book, especially for those who lack large-scale C + + software development. However, the Chinese version of the book is too poor to translate. This is a book about engineering, so it is not necessary for C + + learning. In addition, the book's views are slightly conservative, the latest C + + technology is not used much.
"Imperfect C + +"
This is a book based on practice, is really excellent, and the content is not very difficult to talk about. But from the perspective of learning C + +, it takes a lot of practical experience to understand this book. Push not recommended, belong to a dilemma of a book.
"C + + Primer" and "TC++PL" are not suitable for beginners
The goal of this bibliography is to help a person presenting illegal weapons as soon as possible in the C + + field, helping a person become a qualified C + + programmer.
This bibliography is not suitable for the following objectives: to cope with various computer exams, to meet interviews, and to quickly understand C + +.
C Language Reference manual (original book 5th edition)" ---- As a reference book, yes.
Reference on China-pub:
This book is the latest version of the classic C language Reference manual, with emphasis on correctness, portability and maintainability, and a complete and accurate description of the specific details of C language, the runtime and the C language programming style. This book covers the implementation of all C language versions of the traditional C language, C89, C95, C99, and so on, and also discusses C + + and C language compatible parts. The book from top to bottom introduces the lexical structure, preprocessor, declaration, type expression, statement, function and runtime of C language, which is a necessary reference for all C programming staff. This best-selling authoritative reference manual provides a complete description of the basic concepts and runtime Library of C language, as well as a good C language programming style based on correctness, portability and maintainability, and is widely adopted as a textbook or teaching reference in many foreign universities, and this book describes all the details of each version of C language. It is the only necessary reference manual for the C language programmer and the implementing person. The latest 5th edition has been revised and updated to incorporate a complete description of the latest C language standard ISO IEC 9,899:1999, including powerful language extensions and a new library of functions. The Web site www.CAReferenceManual.com contains the source code for a longer example of this book, an in-depth discussion of the C language controversy, the latest ISO IEC language standard revisions, and links to other important C language resources. This book, as a reference manual, provides a very detailed and clear description of the C language:
Standard C Language (1999): A new version of the standard C language that supports complex types and Boolean types, variable-length arrays, precision floating-point programming, and new library functions with portability and internationalization
Standard in C language (1989): the C language version currently used by most programmers
Traditional C: A common version before 1990, with millions of lines of code in use
C + + compliant: Code that can be used in both C and C + +
Full runtime for all C language versions
C language Science and art"--- very good book, now also has the Chinese version of the
reference china-pub on the introduction:
This book is a classic textbook of computer Science, which introduces the basic knowledge of computer science and the expertise of program design. This book introduces ANSI C as the main line, not only covers the basic knowledge of C language, but also introduces the software engineering technology and how to apply a good program design style to develop the content. This book uses the library function method, emphasizes the abstract principle, elaborated the library and the modularization development in detail. In addition, the book also uses a large number of examples to solve the problem of the whole process, the development process of common errors are also given to solve and avoid the method. This book can be used as an introductory course in college computer Science and a textbook for the C language Introductory course, as well as a very good reference book for C language developers.
C language interface and implementation: the technology of creating reusable software"
refers to the introduction of China-pub:
The book is a clear concept, novel content, detailed examples, is a design, implementation and effective use of C library functions, Master the Reference guide for creating reusable C-language software module technologies. This book advocates the interface-based C language design concept and its implementation technology, in-depth description of the 24 C language interface and its implementation.
This book is a rare good book for C programmers by describing how to separate the design and implementation of the interface in a language-neutral way, creating an interface-based design approach to create a reusable API. It is also a reference book worth reading for all readers who want to master the technology of reusable software modules. There are few (if any) guidelines on how to design, implement, and effectively use library functions. This masterpiece fills the void. It can be used as a reference for next-generation software. All C-language programmers should read. --w. Richard stevens
I recommend this book to every professional C-language programmer. C-language programmers have ignored the various techniques described in the book for too long. " & Nbsp; --norman Ramsey, Bell Labs researcher
"C Programming Language (2nd Edition/new version)"
Refer to China-pub on:
This book is an authoritative classic of the standard C language and its program design methodology, written by Brian W. Kernighan and Dennis M. Ritchie, a C-language designer. It comprehensively and systematically describes the characteristics of C language and the basic methods of program design, including basic concepts, types and expressions, control flow, function and program structure, pointers and arrays, structure, input and output, Unix system interface, standard library and so on.
The book's Simple and concise, with typical examples, easy to understand, practical, suitable as a college computer professional or non-computer professional C language textbooks, but also for computer-related hardware and software development of technical personnel reference books. In the history of computer development, no programming language such as C language is so widely used.
The original book is one of the designers of C language Dennis M. Ritchie and the famous computer scientist Brian W. Kernighan co-authored an authoritative classic of the C language. We now see a large number of C language programming textbooks and monographs are modelled on this book. The C language introduced in the original version 1th became the basis for the later widely used version of C-Standard C. The well-known "Hello, World" program was first introduced in this book, and now the program has become the first lesson in all programming languages to get started. The 2nd edition of the original version was revised in accordance with the Ansic standard established in 1987. Introduced the latest language forms, and added new examples, through concise description, typical examples, the author comprehensively, systematically, accurately describes the characteristics of C language and the basic methods of programming. For computer practitioners, this book is a must-read reference for programming languages.
C + + advanced must-read books