C++ is a general-purpose object-oriented programming language developed by Bjarne Stroustrup. It is an extension of the C language. C++ is one of the most popular languages primarily utilized with system/application software, drivers, client-server applications and embedded firmware. It was designed with a bias toward system programming and embedded systems.

To complete this section I will be working from the following book(s):

  • Book 01: Schaum's Outline Of Programming With C++

    book cover
    The Book's Cover

    Author: John Hubbard


    More than 40 million students have trusted Schaum’s to help them succeed in the class room and on exams. Schaum’s is the key to faster learning and higher grades in every subject. Each Outline presents all the essential course information in an easy-to-follow, topic-by-topic format. You also get hundreds of examples, solved problems, and practice exercises to test your skills.

    This Schaum’s Outline gives you

    1. Practice problems with full explanations that reinforce knowledge
    2. Coverage of the most up-to-date developments in your course field
    3. In-depth review of practices and applications

    Publisher: McGraw-Hill Education (6th Jun. 2000)

    ISBN: 978-0071353465

  • Book 02: C++ How To Program

    book cover
    The Book's Cover

    Author: Paul J. Deitel


    For Introduction to Programming and other more intermediate courses covering programming in C++. Also appropriate as a supplement for upper-level courses where the instructor uses a book as a reference for the C++ language.

    This best-selling comprehensive text is aimed at readers with little or no programming experience. It teaches programming by presenting the concepts in the context of full working programs and takes and early objects approach. The text has an emphasis on achieving program clarity through structured and object-oriented programming, software reuse and component-oriented software construction. The Sixth Edition reflects the suggested improvements of a distinguished team of industry professionals and academics.

    Publisher: Pearson Education (US), 6th edition (July 2007)

    ISBN: 978-0136152507

BOOK ONE: Schaum's Outline Of Programming With C++

The home page for the exercises done from Schaum's Outline Of Programming With C++ can be found here.

BOOK TWO: C++ How To Program

The following sections contain worked exercises from the C++ How To Program book.

  • Section 01: Introduction To C++ Programming

    In this section I begin to write simple computer programs in C++. This includes simple input and output statements the use fundamental types,basic computer memory concepts,the use of arithmetic operators, the precedence of arithmetic operators, and writing simple decision making statements.

  • Section 02: Introduction To Classes And Objects

    In this section I begin writing programs that employ the basic concepts of object-oriented programming

  • Section 03: Control Statements Part I

    C++’s if, if...else and while statements, three of the building blocks that allow specified logic required for member functions to perform their tasks. Also, C++’s assignment, increment and decrement operators. These additional operators abbreviate and simplify many program statements.

  • Section 04: Control Statements Part II

    This section covers C++’s remaining control statements. The control statements we study here (like those from section 3) will help build and manipulate objects. Here, the for, do…while and switch statements are demonstrated. Through short examples using while and for, counter-controlled repetition is explored. The break and continue program control statements are introduced. Logical operators, which enable the use of more powerful conditional expressions are explored.

  • Section 05: Functions And An Introduction To Recursion

    In this section the following is covered:
    • To construct programs modularly from functions.
    • To use common math library functions.
    • The mechanisms for passing data to functions and returning results.
    • How the function call/return mechanism is supported by the function call stack and activation records.
    • To use random number generation to implement game-playing applications.
    • How the visibility of identifiers is limited to specific regions of programs.
    • To write and use recursive functions.

  • Section 06: Arrays And Vectors

    In this section the following are covered:

    1. To use the array data structure to represent a set of related data items.
    2. To use arrays to store, sort and search lists and tables of values.
    3. To declare arrays, initialize arrays and refer to the individual elements of arrays.
    4. To pass arrays to functions.
    5. Basic searching and sorting techniques.
    6. To declare and manipulate multidimensional arrays.
    7. To use C++ Standard Library class template vector.

  • Section 07: Pointers

    In this section the following are covered:

    1. What pointers are.
    2. The similarities and differences between pointers and references, and when to use each.
    3. To use pointers to pass arguments to functions by reference.
    4. The close relationships between pointers and arrays.
    5. To use arrays of pointers.
    6. Basic pointer-based string processing.
    7. To use pointers to functions.

  • Section 08: Classes Part I

    In this section the following are covered:

    1. How to use a preprocessor wrapper to prevent multiple definition errors.
    2. To understand class scope and accessing class members via the name of an object, a reference to an object or a pointer to an object.
    3. To define constructors with default arguments.
    4. How destructors are used to perform “termination housekeeping” on an object before it’s destroyed.
    5. When constructors and destructors are called and the order in which they’re called.
    6. The logic errors that may occur when a public member function returns a reference to private data.
    7. To assign the data members of one object to those of another object by default member wise assignment.