EIEIOTECHNOVATION
← Training programmes

EIEIO / PROGRAMMING & DEVELOPMENT

C++ Basic & Intermediate

Course outline

5 days

Duration

5 days

Overview

C++ is the object oriented superset of ANSI C. This course provides students with a comprehensive study of the C++ Programming Language. The course stresses the object paradigm including classes, inheritance, virtual functions, and templates in the development of C++ programs. Lab exercises reinforce the lectures.

Course Outline

Perspective

The Software Crisis

Design Techniques

Large Software Systems

Roots of Object Technology

What Is Object-Oriented Programming?

C++ and Object-Oriented Programming

Building a basic C++ application

The required main() function

The main() function file

Application files

Basic Elements of C++

Control Structures I (Selection)

Control Structures II (Repetition)

User-Defined Functions I

User-Defined Functions II

Namespaces, the class string, and User-Defined Simple Data Types.

Arrays

The Language of Object-Orientation

What Is an Object?

What Is a Class?

Encapsulation

Data Hiding

The Public Interface

Relationships Among Classes

Inheritance

Polymorphism

Object-Oriented Design

C vs. C++

Comments

Namespaces

Simple Output

Simple Input

Definitions Near to First Use

Function Prototypes

The inline Specifier

const

Structure Members

The Reference Type

Overloading Function Names

Default Parameters

The Scope Resolution Operator

Aggregates

Operators new and delete

The bool Data Type

The string Data Type

Fundamentals of Classes

Data Types

User Defined Data Types

Using the Class Concept

Defining a Class

public and private Access Levels

The Scope Resolution Operator ::

Using Class Objects Like Built-in Types

Scope

Constructors

Member Initialization Lists

Destructors

Array of Objects

Pointers

The this Pointer

Passing Objects to Functions

Returning Objects From Functions

static Class Members

Operator Overloading

Introduction

Rules for Operator Overloading

Rationale for Operator Overloading

Overloading Member Functions

Overloading Non-Member Functions

friend Functions

The Copy Constructor

The Assignment Operator

Overloading [ ]

Overloading Increment and Decrement Operators

const Objects and References

Composition of Classes

Relationships

Composition of Classes

The Point Class

The Line Class

Member Initialization Lists

An Application With Composition

The Copy Constructor under Composition

operator= under Composition

Inheritance

Introduction

Public Base Classes

The protected Access Level

Member Initialization Lists

What Isn’t Inherited

Assignments Between Base and Derived Objects

Compile-Time vs. Run-Time Binding

virtual Functions

Polymorphism

virtual Destructors

Pure virtual Functions

Abstract Base Classes

An Extended Inheritance Example

I/O in C++

The iostream Library

Predefined Streams

Overloading operator<<

Overloading operator>>

Manipulators

Stream States

Formatted I/O

Disk Files

Reading and Writing Objects

Advanced Topics

Template Functions

Template Classes

Multiple Inheritance

User-Defined Conversions

Data Structures

An Iterator Class

Exceptions

Introduction to the Standard Template Library

Introduction

The Standard Template Library

Design Goals

STL Components

Iterators

Example: vector

Example: list

Example: set

Example: map

Example: find

Example: merge

Example: accumulate

Function Objects

Adaptors

Programme scope, delivery arrangements and suitability are confirmed during enquiry.