Print this page

C++ Programming: An Introduction

Upcoming Class Dates

(Toronto location only)

Course Specifications

Course number: 085953
Software: DGJPP
Course length: 5.0 day(s)

Course Description

In your day-to-day life, you might have come across various applications that involve software components. All these software applications are developed using programming languages. As a programmer, you would like to create an application that will be of use to your clients. In the C++ Programming: An Introduction course, you will use object-oriented programming principles to write programs in C++.
Course Objective: You will migrate from C to C++, explore the object-oriented programming concepts, create classes and instances, implement inheritance and data abstraction within your classes. You will also create templates, and use C++ libraries and handle various exceptions.

Target Student: The target student for this course is an entry-level programmer interested in developing applications using C++. Job changers, or persons with an academic background in a field other than computer science or programming, who wish to embark on a course of study that will prepare them for employment as professional software developers. It is also intended for programmers who are interested in extending their skills in C, C++ and Java.

Prerequisites: Participants must have a foundation in C programming and have an understanding of object-oriented concepts such as classes and inheritance. Suggested pre-requisite Element K courses are:

Performance-Based Objectives

Upon successful completion of this course, students will be able to:

Course Content

Lesson 1: Getting Started with C++

Topic 1A: Identify the Basic Differences Between C and C++
Topic 1B: Compile and Execute a Simple C++ Program

Lesson 2: Migrating from C to C++

Topic 2A: Declare Variables
Topic 2B: Work with Arrays and Strings
Topic 2C: Use Qualifiers in C++
Topic 2D: Use Functions in C++

Lesson 3: Understanding OOPs Concepts

Topic 3A: Object-Oriented Programming
Topic 3B: Object Oriented Paradigm

Lesson 4: Managing Data Storage

Topic 4A: Understand Memory Allocation
Topic 4B: Control Dynamic Memory Allocation

Lesson 5: Working with Classes and Objects

Topic 5A: Define a Class
Topic 5B: Create an Object
Topic 5C: Instantiate a Class Using the new Operator

Lesson 6: Using Friend and Inline Functions

Topic 6A: Use Friend Functions
Topic 6B: Use Inline Functions

Lesson 7: Using Static Data Members and Member Functions

Topic 7A: Work with Static Data Members
Topic 7B: Work with Static Member Functions

Lesson 8: Working with Constructors and Destructors

Topic 8A: Initialize Instance Variables Using Constructors
Topic 8B: Destroy Instances Using Destructors

Lesson 9: Implementing Compile-time Polymorphism by Overloading Operators

Topic 9A: Overload Arithmetic Operators
Topic 9B: Overload I/O Operators
Topic 9C: Overload Assignment Operator

Lesson 10: Implementing Compile-time Polymorphism by Overloading Functions

Topic 10A: Overload Functions
Topic 10B: Overload Constructors

Lesson 11: Implementing Runtime Polymorphism Using Inheritance

Topic 11A: Inherit a Class
Topic 11B: Work with Derived Classes
Topic 11C: Inherit Multiple Classes
Topic 11D: Use Virtual Base Classes

Lesson 12: Implementing Runtime Polymorphism Using Virtual Functions

Topic 12A: Override Functions
Topic 12B: Implement an Abstract Class

Lesson 13: Handling Exceptions

Topic 13A: Handle an Exception Using the try and catch Block
Topic 13B: Handle Derived Class Exceptions

Lesson 14: Working with Input and Output Streams

Topic 14A: Use Input and Output Streams
Topic 14B: Control Input/Output Using Manipulators
Topic 14C: Access Files Using Sequential Access
Topic 14D: Access Files Using Random Access

Lesson 15: Working with Templates

Topic 15A: Use Template Classes and Functions
Topic 15B: Overload a Template Function

Lesson 16: Using the Standard Template Library

Topic 16A: Work with Vectors
Topic 16B: Work with Lists
Topic 16C: Work with Maps