Did you know that over 4 million developers worldwide use C++, and in the U.S., C++ developers earn an average salary of $100,000 a year? Learning C++ can greatly enhance your resume and open the door to exciting, high-impact projects. This video course takes a hands-on approach to teaching C++ by guiding you through building real applications.
You'll begin with an overview of the course objectives and learn how to set up your development environment on both Windows and macOS. Once your setup is complete, you'll dive into building engaging projects like a Mad Libs Clone, Jam of the Month app, Parallel Arrays/Vectors, and Tic-Tac-Toe. These projects will introduce you to essential C++ concepts, including variables, data types, operators, control structures, arrays, vectors, and functions.
As you progress, you’ll take on more advanced projects that help you master object-oriented programming topics such as classes, objects, exception handling, debugging, pointers, inheritance, and polymorphism. The course concludes with an introduction to advanced topics like templates, the Standard Template Library (STL), pointers, and operator overloading.
By the end of this course, you’ll have a solid grasp of both foundational and advanced C++ concepts, equipping you to build powerful and modern applications with confidence.
Who Should take this Course?
The C++ Developer Online Course is ideal for aspiring software developers, computer science students, and programming enthusiasts who want to build a strong foundation in C++ for system programming, game development, and high-performance applications. It’s also suitable for professionals transitioning to C++ or preparing for roles in embedded systems, finance, or application development. No prior experience is required, but a basic understanding of programming concepts can be helpful for effective learning.
Course Curriculum
Getting Started
Section Overview
Getting Started on Windows with Visual Studio Integrated Development Environment (IDE)
Getting Started on macOS or Linux with CodeBlocks IDE
Finding Answers to Your Questions
Fundamentals of C++
Section Overview
Saying "Hello" to C++
Variables and Data Types - Part 1
Variables and Data Types - Part Two
Variables and Data Types - Part Three
Comments
Arithmetic Operators
Relational Operators
Logical Operators
Symbolic Constants and Naming Conventions
User Input
Project - Average of Three
Project - MadLibs Clone
Section Wrap-Up
Control Statements
Section Overview
Introduction to Control Statements
Selection Control Statements
Repetition Control Statements
The Break and Continue Statements
Random Numbers
Project - Jam of the Month Club
Project - Odds and Evens
Project - Guess the Number
Section Wrap-Up
Arrays and Vectors
Section Overview
Built-in Arrays
The Array Class
The Vector Class
Multi-Dimensional Arrays
Project - Array Data
Project - Vector Data
Project - Parallel Arrays/Vectors
Section Wrap-Up
Functions
Section Overview
Function Prototypes and Definitions
Function Return Types and Parameters
Parameter Passing: Pass-by-Value and Pass-by-Reference
Variable Scope and Lifetime
Function Overloading
The <cmath> Library
Recursion
Project - Return the Product of Three Parameters
Project - Return the Sum of Built-in Array Elements
Project - Return the Sum of Array Object Elements
Project - Retrieve the Sum of Array Object Elements by Reference
Project - Tic-Tac-Toe (ADVANCED)
Section Wrap-Up
Introduction to Classes and Objects
Section Overview
Basics of Object Oriented Programming (OOP)
Encapsulation: Data Members and Member Functions
Separate Compilation
Constructors and Destructors
A Rectangle Class
A Book Class
Project - A Bank Account Class
Project - A Pizza Class
Project - A Circle Class
Section Wrap-Up
Exceptions and Debugging
Section Overview
Exceptions and the Exception Hierarchy
Logic Errors
Runtime Errors and Throwing Exceptions
Rethrowing Exceptions
Custom Exceptions
Basic Testing and Debugging
Project - Throwing and Handling an Out_of_Range Exception
Project - Creating and Using Your Own Exception
Section Wrap-Up
Pointers
Section Overview
Introduction to Pointers
Dynamic Memory - Part 1
Dynamic Memory (- Part 2
Const Correctness
Project - Dynamically Creating Rectangles
Project - Dynamically Creating Circles
Section Wrap-Up
File Input and Output
Section Overview
Sequential File Output
Sequential File Input
More File Input/ Output (I/O)
Project - Reading Data from File and Printing Statistics
Project - Dynamically Creating Rectangles from File
Project - Shopping Item File
Section Wrap-Up
Inheritance and Polymorphism
Section Overview
Inheritance - Part 1
Inheritance - Part 2)
Polymorphism and Late Binding
Enumerated Types This video explains enumerated types.
Project - Derived Cat Class
Project – Role Playing Game (RPG) Player Character Creation
Section Wrap-Up
Templates, the Standard Template Library (STL), and Other Skills