C++ Programming
![]() |
This page is currently protected from editing until disputes have been resolved. This protection is not an endorsement of the current version. See the protection log for more details. Please discuss any changes on the discussion page; you may use the {{editprotected}} template to ask an administrator to make the edit if it is supported by consensus. You may also request that this page be unprotected. |
This book covers the C++ programming language, its interactions with software design and real life use of the language. It is presented in a series of chapters as an introductory prior to advance courses but can also be used as a reference book. This is an open work; if you find any problems with terms or concepts you can help by contributing to it; your participation is needed and welcomed! You are also welcomed to state any preference, shortcomings, vision for the actual book content, structure or other conceptual matters; see this Wikibook's discussion page for the right forum for participating.
Subject:C++ programming language
A complete printable version of
C++ Programming is available.
(attention to its size)
A single page version [ edit) with all chapters is available (attention to its size).
Preface: About the book [ edit ] [ edit chapters list ] [ edit print version ]
Chapter 1 : C++ a multi-paradigm language [ edit ] [ edit summary ] [ print chapter ]
- Introducing C++
- Programming languages
- Programming paradigms - the versatility of C++ as a multi-paradigm language, concepts of object-oriented programming (objects and classes, inheritance, polymorphism).
- Comparisons - to other languages, relation to other computer science constructs and idioms.
- with C
- with Java
- with C#
- with Managed C++ (C++/CLI)
- with D
Chapter 2 : Fundamentals for getting started [ edit ] [ edit summary ] [ print chapter ]
- The code - includes list of recognized keywords.
- Compiler
- Preprocessor - includes the standard headers.
- Linker
- Variables and storage - locality, scope and visibility, including source examples.
- Operators - precedence order and composition, , assignment, sizeof, new, delete, [] (arrays), * (pointers) and & (references).
- Logical operators - the && (and), || (or), and ! (not).
- Conditional operator - the ?:
- Type casting - Automatic, explicit and advanced type casts.
- Flow of control - Conditionals (if, if-else, switch), loop iterations (while, do-while, for) and goto.
- Functions - Introduction (including main), argument passing, returning values, recursive functions, pointers to functions and function overloading.
- Debugging - Finding, fixing, preventing bugs and using debugging tools.
Chapter 3 : Object-Oriented Programming [ edit ] [ edit summary ] [ print chapter ]
- Structures
- Unions
- Classes (Inheritance, Member Functions, Polymorphism and this pointer)
- Operator overloading
- Standard Input/Output streams Library
Chapter 4 : Advanced Features [ edit ] [ edit summary ] [ print chapter ]
- Templates
- Standard Template Library (STL)
- Smart Pointers
- Exception Handling
- Run-Time Type Information (RTTI)
Chapter 5 : Beyond the Standard [ edit ] [ edit summary ] [ print chapter ]
- Resource Acquisition Is Initialization (RAII)
- Garbage Collection (GC)
- Design patterns - Creational, Structural and Behavioral patterns.
- Libraries - APIs vs Frameworks and Static and dynamic libraries.
- Boost library
- Optimizing your programs
- Cross-platform development
- Software internationalization
- Unified Modeling Language (UML)
Appendix A: References Tables
(used on book chapters, print version excludes the Appendix)
• Keywords • Preprocessors Directives • Standard Headers • Data Types • Operators • Standard C Library Functions • ASCII chart
Appendix B: External References
Appendix C: C++ Programming by examples [ edit ]
(Compilable programs used on book chapters, print version excludes the Appendix)
Appendix D: C++ Programming - exercises [ edit ]
Supporting exercises for the book content.