Introduction to C++

Learn everything from basic syntax and data structures to advanced concepts like OOP. Create C++ applications from scratch!

(CPP.AB2) / ISBN : 978-1-64459-558-9
This course includes
Interactive Lessons
Gamified TestPrep
Lab
AI Tutor (Add-on)
Get A Free Trial

About This Course

Introduction to C++ is a comprehensive online training course that provides the skills and knowledge required to create robust and efficient C++ applications. It focuses on the core concepts of C++, including variables, data types, control flow, and functions. Whether you are a student wanting to learn new skills or you want to upgrade your existing knowledge, this is the perfect C++ course for you. Access interactive and immersive learning with our Live Lab activities that are especially designed to provide you with a real coding experience in an online environment. By the end of this Introduction to C++ programming course, you’ll be able to write efficient, maintainable, and well-structured codes.

Skills You’ll Get

  • Logical reasoning and problem-solving skills
  • Fundamentals of C++ code, including variables, data types, operators, control flow statements, and functions
  • Utilize of pointers and references for dynamic memory allocation and deallocation
  • Create generic codes using templates for reusability and flexibility
  • Execute error handling mechanisms to manage unexpected situations
  • Expertise in using debugging tools and techniques to identify and fix errors in C++ code
  • Skilled in advanced C++ features like the Standard Template Library (STL)
  • Knowledge of lambda expressions, auto keyword, range-based for loops, and constexpr functions
  • Metaprogramming for writing codes that generate other codes at compile time
  • Expertise in Object-Oriented Programming (OOP) to create classes, objects, inheritance, polymorphism, and encapsulation

 

1

Introduction

  • Who Should Read This Course?
  • Should I Learn C First?
  • Why Should I Learn C++?
  • What If I Don’t Want This Course?
  • Conventions Used in This Course
2

Hour 1: Writing Your First Program

  • Using C++
  • Compiling and Linking the Source Code
  • Creating Your First Program
  • Summary
3

Hour 2: Organizing the Parts of a Program

  • Reasons to Use C++
  • The Parts of a Program
  • Comments
  • Functions
  • Summary
4

Hour 3: Creating Variables and Constants

  • What Is a Variable?
  • Defining a Variable
  • Assigning Values to Variables
  • Using Type Definitions
  • Constants
  • Attributes
  • Knowledge Check
  • Auto-Typed Variables
  • Summary
5

Hour 4: Using Expressions, Statements, and Operators

  • Statements
  • Expressions
  • Operators
  • If-Else Conditional Statements
  • Logical Operators
  • Tricky Expression Values
  • Summary
6

Hour 5: Calling Functions

  • What Is a Function?
  • Declaring and Defining Functions
  • Using Variables with Functions
  • Function Parameters
  • Returning Values from Functions
  • Default Function Parameters
  • Overloading Functions
  • Auto-Typed Return Values
  • Summary
7

Hour 6: Controlling the Flow of a Program

  • Looping
  • while Loops
  • do-while Loops
  • for Loops
  • switch Statements
  • Summary
8

Hour 7: Storing Information in Arrays and Strings

  • What Is an Array?
  • Writing Past the End of Arrays
  • Initializing Arrays
  • Multidimensional Arrays
  • Character Arrays
  • Array bounded/unbounded
  • Copying Strings
  • Reading Arrays with Foreach Loops
  • Summary
9

Hour 8: Creating Basic Classes

  • What Is a Type?
  • Creating New Types
  • Classes and Members
  • Accessing Class Members
  • Private Versus Public Access
  • Implementing Member Functions
  • Creating and Deleting Objects
  • Summary
10

Hour 9: Moving into Advanced Classes

  • const Member Functions
  • Interface Versus Implementation
  • Organizing Class Declarations and Function Definitions
  • Inline Implementation
  • Classes with Other Classes as Member Data
  • Summary
11

Hour 10: Creating Pointers

  • Understanding Pointers and Their Usage
  • The Stack and the Heap
  • Null Pointer Constant
  • Summary
12

Hour 11: Developing Advanced Pointers

  • Creating Objects on the Heap
  • Deleting Objects
  • Accessing Data Members Using Pointers
  • Member Data on the Heap
  • The this Pointer
  • Stray or Dangling Pointers
  • const Pointers
  • const Pointers and const Member Functions
  • Summary
13

Hour 12: Creating References

  • What is a Reference?
  • Creating a Reference
  • Using the Address of Operator on References
  • What Can Be Referenced?
  • Null Pointers and Null References
  • Passing Function Arguments by Reference
  • Understanding Function Headers and Prototypes
  • Returning Multiple Values
  • Summary
14

Hour 13: Developing Advanced References and Pointers

  • Passing by Reference for Efficiency
  • Passing a const Pointer
  • References as an Alternative to Pointers
  • When to Use References and When to Use Pointers
  • References to Objects Not in Scope
  • Returning a Reference to an Object on the Heap
  • Pointer, Pointer, Who Has the Pointer?
  • Summary
15

Hour 14: Calling Advanced Functions

  • Overloaded Member Functions
  • Using Default Values
  • Initializing Objects
  • The Copy Constructor
  • Compile-Time Constant Expressions
  • Summary
16

Hour 15: Using Operator Overloading

  • Operator Overloading
  • Conversion Operators
  • Summary
17

Hour 16: Extending Classes with Inheritance

  • What Is Inheritance?
  • Private Versus Protected
  • Constructors and Destructors
  • Passing Arguments to Base Constructors
  • Overriding Functions
  • Summary
18

Hour 17: Using Polymorphism and Derived Classes

  • Polymorphism Implemented with Virtual Member Functions
  • How Virtual Member Functions Work
  • Summary
19

Hour 18: Making Use of Advanced Polymorphism

  • Problems with Single Inheritance
  • Abstract Data Types
  • Summary
20

Hour 19: Storing Information in Linked Lists

  • Linked Lists and Other Structures
  • Linked List Case Study
  • Linked Lists as Objects
  • Summary
21

Hour 20: Using Special Classes, Functions, and Pointers

  • Static Member Data
  • Static Member Functions
  • Containment of Classes
  • Friend Classes and Functions
  • Summary
22

Hour 21: Using New Features of C++23

  • The Newest Version of C++
  • Using auto in Function Return Types
  • Improved Numeric Literals
  • The constexpr Keyword
  • Ranges Library
  • Lambda Expressions
  • Coroutines
  • Modules
  • Summary
23

Hour 22: Employing Object-Oriented Analysis and Design

  • The Development Cycle
  • Simulating an Alarm System
  • PostMaster: A Case Study
  • Summary
24

Hour 23: Creating Templates

  • What Are Templates?
  • Instances of the Template
  • Template Definition
  • Using Template Items
  • Fold Expressions
  • Summary
25

Hour 24: Dealing with Exceptions and Error Handling

  • Bugs, Errors, Mistakes, and Code Rot
  • Handling the Unexpected
  • Exceptions
  • Using try and catch Blocks
  • Writing Professional-Quality Code
  • Summary
A

Appendix A: Binary and Hexadecimal

  • Other Bases
  • Around the Bases
  • Hexadecimal
B

Appendix B: Using the MinGW C++ Compiler on Windows

  • Downloading MinGW-w64
  • Setting the Path Environment Variable

Hour 1: Writing Your First Program

  • Creating Your First Program

Hour 2: Organizing the Parts of a Program

  • Understanding Preprocessor Directives

Hour 3: Creating Variables and Constants

  • Using Constants

Hour 4: Using Expressions, Statements, and Operators

  • Using the If-Else Conditional Statement
  • Using the Compound If Statements
  • Using the if Statement

Hour 5: Calling Functions

  • Using Local Variables with Functions
  • Using the Function Parameters
  • Using Function Overloading

Hour 6: Controlling the Flow of a Program

  • Understanding the continue Statement
  • Using the while Loop
  • Using the do-while Loop
  • Using the Nested Loops
  • Using the switch Statement

Hour 7: Storing Information in Arrays and Strings

  • Initializing Arrays
  • Using an Array
  • Implementing a Character Array
  • Storing Data in an Array

Hour 8: Creating Basic Classes

  • Implementing Member Functions
  • Implementing Member Variables and Member Functions
  • Creating Objects

Hour 9: Moving into Advanced Classes

  • Understanding the const Member Function

Hour 10: Creating Pointers

  • Understanding Pointers
  • Using the new and delete Keywords

Hour 11: Developing Advanced Pointers

  • Using the Arrow Operator
  • Understanding const Pointers and const Member Functions

Hour 12: Creating References

  • Creating a Reference

Hour 13: Developing Advanced References and Pointers

  • Returning by Reference
  • Passing a const Pointer

Hour 14: Calling Advanced Functions

  • Understanding the Copy Constructor

Hour 15: Using Operator Overloading

  • Overloading the Addition Operator

Hour 16: Extending Classes with Inheritance

  • Overriding a Function
  • Hiding the Base Class Member Function

Hour 17: Using Polymorphism and Derived Classes

  • Implementing Polymorphism Using the Virtual Function

Hour 18: Making Use of Advanced Polymorphism

  • Using the dynamic_cast Operator
  • Understanding Abstract Data Types

Hour 20: Using Special Classes, Functions, and Pointers

  • Using Static Member Functions
  • Understanding Pointers to Member Functions

Hour 21: Using New Features of C++23

  • Using auto in Function Return Types
  • Using the Lambda Expression

Hour 23: Creating Templates

  • Using Templates

Hour 24: Dealing with Exceptions and Error Handling

  • Dealing with Exceptions

Any questions?
Check out the FAQs

Read this section to find out more details about this Introduction to object-oriented programming in C++ course.

Contact Us Now

This programming course is suitable for a wide range of knowledge seekers ranging from:

  • Beginners with very little or no experience in programming 
  • Experienced developers wanting to expand their knowledge base
  • Students wanting to pursue computer science 
  • Tech professionals wanting to understand C++ for enhanced job opportunities

No, there are no formal prerequisites. It is a beginner-friendly course.

With uCertify, you don’t need any additional tools or software licenses for the course. Facilitating hands-on practical exercises, we provide Live Labs that simulate real-world environments in a virtual set up.

It is one of the most versatile and popular programming languages that offers a unique blend of features. It provides a powerful combination of performance, control, and flexibility ideal for designing a variety of applications. However, the complexities in syntax require more programming experience than other languages.

It is a versatile and powerful language that offers numerous career advantages. C++ is widely used in software development, game development, systems programming, and scientific computing, making it one of the most in-demand skills in the industry, opening doors to high-paying jobs. Additionally, it gives a strong base for learning other programming languages.

Primarily, it focuses on the technical aspects of C++. However, it also imparts some soft skills like problem solving, critical thinking, effective communication, and time-management.

Related Courses

All Course
scroll to top