C++ is a general-purpose programming language. It has imperative, object-oriented and generic programming features, while also providing facilities for low-level memory manipulation.
It was designed with a bias toward system programming and embedded, resource-constrained and large systems, with performance, efficiency and flexibility of use as its design highlights. C++ has also been found useful in many other contexts, with key strengths being software infrastructure and resource-constrained applications, including desktop applications, servers (e.g. e-commerce, web search or SQL servers), and performance-critical applications (e.g. telephone switches or space probes). C++ is a compiled language, with implementations of it available on many platforms. Many vendors provide C++ compilers, including the Free Software Foundation, Microsoft, Intel, and IBM.
C++ is standardized by the International Organization for Standardization (ISO), with the latest standard version ratified and published by ISO in December 2014 as ISO/IEC 14882:2014 (informally known as C++14). The C++ programming language was initially standardized in 1998 as ISO/IEC 14882:1998, which was then amended by the C++03, ISO/IEC 14882:2003, standard. The current C++14 standard supersedes these and C++11, with new features and an enlarged standard library. Before the initial standardization in 1998, C++ was developed by Bjarne Stroustrup at Bell Labs since 1979, as an extension of the C language as he wanted an efficient and flexible language similar to C, which also provided high-level features for program organization. The C++17 standard is due in July 2017, with the draft largely implemented by some compilers already, and C++20 is the next planned standard thereafter.
Many other programming languages have been influenced by C++, including C#, D, Java, and newer versions of C
Read: Deitel & Deitel: “C++ How to Program” Below
C++ How To Program (8th Edition)
Read: “The C++ Programming Language” Below
The C++ Programming Language
Open Source Textbooks
Read: “Thinking in C++, Volume I” Below
Read: “Thinking in C++, Volume II” Below
Introduction to C++ Lectures Stanford
Dr. Julie Zelenski
1. Deitel and Deitel: C++ How to Program. Paperback – 29 Feb 2016
C++ How to Program presents leading-edge computing technologies in a friendly manner appropriate for introductory college course sequences, based on the curriculum recommendations of two key professional organizations—the ACM and the IEEE.
The best-selling C++ How to Program is accessible to readers with little or no programming experience, yet comprehensive enough for the professional programmer. The Deitels’ signature live-code approach presents the concepts in the context of full working programs followed by sample executions. The early objects approach gets readers thinking about objects immediately—allowing them to more thoroughly master the concepts. Emphasis is placed on achieving program clarity and building well-engineered software. Interesting, entertaining, and challenging exercises encourage students to make a difference and use computers and the Internet to work on problems. To keep readers up-to-date with leading-edge computing technologies, the Tenth Edition conforms to the C++11 standard and the new C++14 standard.
Also available with MyProgrammingLab™
This title is also available with MyProgrammingLab–an online learning system designed to engage students and improve results. MyProgrammingLab consists of a set of programming exercises correlated to the programming concepts in this book. Through hundreds of practice problems, the system automatically detects errors in the logic and syntax of their code submissions and offers targeted hints that enable students to figure out what went wrong—and why. MyProgrammingLab improves the programming competence of beginning students who often struggle with the basic concepts and paradigms of popular high-level programming languages. For instructors, a comprehensive gradebook tracks correct and incorrect answers and stores the code inputted by students for review.
- Paperback: 1080 pages
- Publisher: Pearson; 10 edition (29 Feb. 2016)
- Language: English
- ISBN-10: 0134448235
- ISBN-13: 978-0134448237
- Product Dimensions: 17.5 x 3.8 x 22.9 cm
2. Stoustrup: The C++ Programming Language. Paperback – 23 May 2013
The new C++11 standard allows programmers to express ideas more clearly, simply, and directly, and to write faster, more efficient code. Bjarne Stroustrup, the designer and original implementer of C++, has reorganized, extended, and completely rewritten his definitive reference and tutorial for programmers who want to use C++ most effectively.
The C++ Programming Language, Fourth Edition, delivers meticulous, richly explained, and integrated coverage of the entire language—its facilities, abstraction mechanisms, standard libraries, and key design techniques. Throughout, Stroustrup presents concise, “pure C++11” examples, which have been carefully crafted to clarify both usage and program design. To promote deeper understanding, the author provides extensive cross-references, both within the book and to the ISO standard.
New C++11 coverage includes
Support for concurrency
Regular expressions, resource management pointers, random numbers, and improved containers
General and uniform initialization, simplified for-statements, move semantics, and Unicode support
Lambdas, general constant expressions, control over class defaults, variadic templates, template aliases, and user-defined literals
Topics addressed in this comprehensive book include
Basic facilities: type, object, scope, storage, computation fundamentals, and more
Modularity, as supported by namespaces, source files, and exception handling
C++ abstraction, including classes, class hierarchies, and templates in support of a synthesis of traditional programming, object-oriented programming, and generic programming
Standard Library: containers, algorithms, iterators, utilities, strings, stream I/O, locales, numerics, and more
The C++ basic memory model, in depth
This fourth edition makes C++11 thoroughly accessible to programmers moving from C++98 or other languages, while introducing insights and techniques that even cutting-edge C++11 programmers will find indispensable.
This book features an enhanced, layflat binding, which allows the book to stay open more easily when placed on a flat surface. This special binding method—noticeable by a small space inside the spine—also increases durability.
- Paperback: 1368 pages
- Publisher: Addison Wesley; 4 edition (23 May 2013)
- Language: English
- ISBN-10: 0321563840
- ISBN-13: 978-0321563842
- Product Dimensions: 18.8 x 4.6 x 22.6 cm