Written for those C/C++ developers who want to deepen their programming knowledge, Essential C++ provides a short, effective tutorial to some of the most important features of the C++ language, including lessons on generic programming and templates. Compression is the key in this admirably concise text.The author explains C++ from the very beginning with basic syntax and language features and always uses some of the best features of today's Standard C++. Perhaps the best thing here is the integration of "generic programming" (meaning the STL library of reusable templates and algorithms for data collections like vectors, linked lists, and maps, which are built into any current C++ compiler).By focusing on these key features, this tutorial demonstrates C++ in an up-to-the-minute style. (These "advanced" features can help simplify C++ programming from the very beginning.) This tutorial moves quickly, and by the end of the book, the author covers the basics of successful object-oriented design with C++ classes, generic programming, templates, and exception handling. Short examples are the rule here, and each chapter includes exercises for self-study (with solutions provided at the end of the book).C++ is a very rich and very complicated programming language. Essential C++ cuts to the chase and gives the working programmer a tour of the latest and greatest language features in a compact format. As a quick-start guide to today's C++, this title complements the author's much more massive tutorial, C++ Primer. For anyone who knows a little C/C++ and wants to learn more, especially the newest features of Standard C++, this book certainly deserves a closer look. --Richard DraganTopics covered: C++ fundamentals, data types and arrays, pointers, flow control, functions, generic programming and STL, generic algorithms, classes, constructors and destructors, polymorphism and inheritance, abstract classes, runtime type identification, templates and template functions, exception handling.
I love terseness in programming books but this goes too far. It was my first C++ book, and it didn't really do a good job at explaining the language to a pretty senior programmer. The prose is convoluted and sometimes appears non-consequential: you kind of have to decipher its true meaning, which I think it's horrible for a tech book. On the other hand, it does expose you to the basics, and you know the writer is knowledgeable.
While it is a good primer on the C++ programming language and is still useful reading 15 years after publication, this book is too short to impart much information to anyone near the beginner level. It opens with the equivalent of a “Hello World!” program and goes through the basic operators, control constructs and file I/O by page 34. The basics of functions, overloading, templates and pointers to functions takes you to page 67. Generic programming, object-based programming, iterators, copy assignment, object-oriented programming with inheritance and virtual functions, dynamic binding, programming with templates and exception handling take you to the end on page 204. Exercises to reinforce the material are included and solutions to all appear in appendix A. Appendix B is a generic algorithms handbook. They will stretch your understanding of the subject matter. The concept of having a book containing the “essentials” of C++ is a solid one, however the language is large and complex. What the essential components of C++ are is very much within the mind of the user and any small book such as this is by necessity the result of a great deal of selection. Nevertheless, the reader that has programming experience will find value in this book, especially if they work through the exercises.