Skip to content

Contact sales

By filling out this form and clicking submit, you acknowledge our privacy policy.

Object-Oriented Programming with C++

Course Summary

The Object-Oriented Programming in C++ training course will introduce programmers to a hands-on programming approach using the Community Edition of Visual Studio.

The course begins by covering creating classes, instantiating and working with objects. Next the course reviews inheritance, polymorphism and the effort needed to create Orthodox Canonical Form classes. The course concludes by addressing pointers vs references vs modern smart pointers.

Students should have an understanding of object-oriented programming concepts and programming experience in a C-based language.

Learn a baseline level of experience with object-oriented programming.
Developers that are new to or have minimal experience with object-oriented programming.
Software Developer
Skill Level
Targeted Topic - Workshops
2 Days
Related Technologies


Productivity Objectives
  • Create complete Canonical Form classes in C++.
  • Instantiate and work with objects.
  • Extend classes through inheritance.
  • Understand pointers, references and smart pointers in order to make good decisions about memory management.

What You'll Learn:

In the Object-Oriented Programming with C++ training course, you'll learn:
  • Introducing C++
    • C++ Philosophies
    • C++ Standards
    • C++ Code Structure
    • Using Visual Studio
  • Creating Classes and Instantiating Objects
    • Declaring and Implementing classes
    • Understanding Encapsulation
    • Instantiating and Using Objects
  • Understanding C++ Memory
    • Heap vs Stack vs Global Memory
    • Traditional Pointers
    • References
    • Modern Smart Pointers
  • Constructors and Destructors
    • Implementing Simple Constructors
    • Do You Need a Copy Constructor?
    • Implementing Destructors
    • Using the Member Initialization List
  • Operator Overloading
    • Why Operator Overloading?
    • Overloading Arithmetic Operators
    • Overloading Comparison Operators
    • Overloading the Assignment Operator
  • Inheritance and Polymorphism
    • Creating a Derived Class
    • Polymorphism and Virtual Functions
    • Object Slicing
    • Heterogeneous Collections
    • Abstract Classes
  • Template Classes
    • Understanding Generic Programming
    • Creating Templated Classes
    • Using Templated Classes
    • A Brief Glance at the C++ Standard Library
  • Miscellaneous Tidbits
    • Static Members and Static Constructors
    • Preventing Copying
    • Preventing Assignment
    • C++ Evolution
“I appreciated the instructor's technique of writing live code examples rather than using fixed slide decks to present the material.”


Dive in and learn more

When transforming your workforce, it's important to have expert advice and tailored solutions. We can help. Tell us your unique needs and we'll explore ways to address them.

Let's chat

By filling out this form and clicking submit, you acknowledge our privacy policy.