C++ Programming for OO Developers

Course:  CPPOO
Duration:  4 Days
Level:  I
Course Summary

This course is aimed at object-oriented developers (e.g. Java or C#) who need to get up to speed quickly in C++. The course covers the C++ programming constructs and techniques quickly, focussing on the differences between C++ and other OO languages.

« Hide The Details
Topics Covered In This Course

C++ Language Fundamentals

  • C++ statements
  • Code blocks
  • Primitive data types
  • Literals and variables
  • Converting data types
  • Operators
  • Decision making: if, if-else, and switch
  • Looping: for loops, while loops, and do-while loops

Defining Classes

  • Syntax of class declarations
  • Public and private members
  • Creating objects

Implementing Class Functionality

  • Function overloading
  • Default arguments
  • Anonymous arguments
  • Ambiguities
  • Resolving scope conflicts
  • Using the this pointer

Defining Constructors and Destructors

  • Overview of an object's lifetime
  • Defining constructors
  • Constructor chaining
  • Defining destructors

Miscellaneous Language Features

  • Defining enumerations
  • Using the const keyword effectively
  • Defining inline member functions
  • Using reference variables

Composite Classes

  • Overview of composition
  • Defining composite classes
  • Constructing composite objects
  • Using member initialization lists

Associative Classes

  • Overview of delegation
  • Dynamic associations;
  • Lifetime of associative objects
  • Constant associations

Operator Overloading

  • Overview of operator functions
  • Defining unary operators
  • Defining binary operators
  • Defining the [] operator
  • Defining input and output operators

Defining Class-Wide Members

  • Overview
  • Static data members
  • Static member functions
  • Nested types
  • Friend classes

Creating Collections of Objects

  • The need for collections
  • Introduction to template classes
  • Using vector and list
  • Using iterators
  • Introduction to template functions
  • Using the Standard Template Library

Copying and Conversions

  • The copy assignment operator
  • Copy constructors
  • Conversions to a class object
  • Conversions from a class object


  • Recap of inheritance principles
  • Defining a subclass;
  • Defining protected members
  • Scoping and initialisation
  • Multiple inheritance
  • Abstract base classes


  • Recap of polymorphism
  • Defining virtual functions
  • Virtual destructors
  • Pure virtual functions and abstract classes
Who Should Take This Course

This training course is aimed at OO developers who need to transition into C++.

Recommended Prerequisites

Experience using a contemporary OO language such as Java or C#, or familiarity with the C programming language.

Training Style

Short lectures (50%) with extensive hands-on practice (50%).

« Hide The Details
Related Courses
Code Course Title Duration Level
Advanced C++ Programming
5 Days

Every student attending a Verhoef Training class will receive a certificate good for $100 toward their next public class taken within a year.

You can also buy "Verhoef Vouchers" to get a discounted rate for a single student in any of our public or web-based classes. Contact your account manager or our sales office for details.

Schedule For This Course
There are currently no public sessions scheduled for this course. We can schedule a private class for your organization just a couple of weeks from now. Or we can let you know the next time we do schedule a public session.
Notify me the next time this course is confirmed!
Can't find the course you want?
Call us at 800.533.3893, or
email us at [email protected]