Programming in C++

Programming in C++

This course provides a practical hands-on introduction to the C/C++ programming language. Participants will learn the central concepts of the C/C++ language, with emphasis on the use of object-oriented techniques in writing robust code.

C++ Overview

  1. C++ Characteristics
  2. Object-Oriented Terminology
  • Polymorphism
  1. Object-Oriented Paradigm
  2. Abstract Data Types
  3. I/O Services
  • Standard Template Library
  • Standards Compliance

Functions and Variables

  1. Functions: Declaration and Definition
  2. Variables: Definition, Declaration and Scope
  • Variables: Dynamic Creation and Derived Data
  1. Arrays and Strings in C++
  2. Qualifiers

Classes in C++

  1. Defining Classes in C++
  2. Classes and Encapsulation
  • Member Functions
  1. Instantiating and Using Classes
  2. Using Constructors
  3. Multiple Constructors and Initialization Lists
  • Using Destructors to Destroy Instances
  • Friendship

Operator Overloading

  1. Operator Overloading
  2. Working with Overloaded Operator Methods

Initialization and Assignment

  1. Initialization vs. Assignment
  2. The Copy Constructor
  • Assigning Values
  1. Specialized Constructors and Methods
  2. Constant and Static Class Members

Storage Management

  1. Memory Allocation
  2. Dynamic Allocation: new and delete


  1. Overview of Inheritance
  2. Defining Base and Derived Classes
  • Constructor and Destructor Calls


Overview of Polymorphism

Input and Output in C++ Programs

  1. Standard Streams
  2. Manipulators
  • Unformatted Input and Output
  1. File Input and Output


  1. Exceptions
  2. Inheritance and Exceptions
  • Exception Hierarchies
  1. Inside an Exception Handler


  1. Template Overview
  2. Customizing a Templated Method
  • Standard Template Library Containers