C/C++ Private Self-Paced

Introduction to C++ Programming (CPP120)

Course Length: 5 days

This Introduction to C++ course provides a practical foundation in modern C++ programming, covering essential language features, core syntax, and contemporary best practices.

Introduction to C++ Programming

Register or Request Training

  • Private class for your team
  • Live expert instructor
  • Online or on‑location
  • Customizable agenda
  • Proposal turnaround within 1–2 business days
Price per student
$249.75 or 10 vouchers
  • On Demand 24/7
  • Readings, Video Presentations, Exercises
  • Quizzes to knowledge check
  • Life-Time Access

Course Overview

This Introduction to C++ course provides a practical foundation in modern C++ programming, covering essential language features, core syntax, and contemporary best practices. Students begin with the evolution of C++ and quickly move into writing and understanding real programs, learning variables, control flow, functions, arrays, strings, and memory management. Modern C++ features such as type deduction, lambdas, constexpr, smart pointers, ranges, and std::format are emphasized throughout to promote safe, readable, and efficient code.

The course also introduces structured and object-oriented programming, including user-defined types, standard library containers and algorithms, class design, inheritance, and polymorphism. Hands-on exercises reinforce each major topic, while file I/O lessons demonstrate how to work with real data. By the end of the course, participants will have the skills and confidence to write well-structured C++ programs and continue into more advanced C++ development.

Course Benefits

  • Comprehensive introduction to C++ programming language.
  • Understanding of procedural and object-oriented programming paradigms.
  • Competence in core syntax and control flow structures of C++.
  • Deepening knowledge of memory management and pointers.
  • Utilization of standard data structures for enhanced program design.
  • Proficiency in object-oriented programming and design principles.
  • Ability to implement inheritance and polymorphism in programs.
  • Experience with file input and output operations in C++.

Delivery Methods

Private Class
Delivered for your team at your site or online.
Self-Paced
Learn at your own pace with 24/7 access.

Course Outline

  1. Getting Started with Modern C++
    1. History and Evolution of C++
    2. Procedural and Object-Oriented Features
    3. First Program Walkthrough (Exercise)
    4. Program Structure Basics
  2. Core Syntax and Control Flow
    1. Variables, Constants, and Type Deduction
    2. Operators and Expressions
    3. Basic Input and Output
    4. Modern Output: std::format
    5. Conditionals: if and switch
    6. Loops: for, while, do-while
    7. Control Flow Practice (Exercise)
  3. Functions and Functional Features
    1. Defining and Using Functions
    2. Overloading and Default Parameters
    3. Scope and Lifetime
    4. Lambdas and Generics
    5. consteval and constexpr
    6. Error Handling Techniques
    7. Function and Scope Practice (Exercise)
  4. Arrays and Strings
    1. C-style Arrays and Strings Overview
    2. Modern Arrays: std::array
    3. Strings with std::string and std::string_view
    4. String Formatting with std::format
    5. Exploring Arrays and Strings in C++ (Exercise)
  5. Memory and Pointers
    1. Basics of Pointers and Addresses
    2. Pointer Arithmetic
    3. Dynamic Memory: new and delete
    4. Smart Pointers: unique_ptr, shared_ptr, weak_ptr
    5. Pointers vs. References
    6. Explore Pointers and Memory (Exercise)
  6. Structured Programming
    1. User-Defined Types: struct
    2. typedef and enum
    3. Passing Structs to Functions
    4. Practice with User-Defined Types and Enums (Exercise)
  7. Standard Data Structures
    1. Vectors and Lists
    2. Stacks, Queues, and Deques
    3. Maps and Sets
    4. Unordered Containers
    5. Common Algorithms: sort, find, Ranges
    6. Explore and Implement Standard Data Structures (Exercise)
  8. Object-Oriented Programming
    1. OOP Principles: Encapsulation, Inheritance, Polymorphism
    2. Class Definitions
    3. Member Variables and Functions
    4. Constructors and Destructors
    5. Access Control
    6. Function and Operator Overloading
    7. Designing a Basic OOP System (Exercise)
  9. Inheritance and Polymorphism
    1. Base and Derived Classes
    2. Inheritance Types
    3. Virtual Functions and Dynamic Dispatch
    4. Abstract Classes and Interfaces
    5. Inheritance and Polymorphism Practice (Exercise)
  10. File I/O
    1. File Streams and Concepts
    2. Reading Files: ifstream
    3. Writing Files: ofstream
    4. File Modes and Error Handling
    5. Working with Structured Data Files
    6. Practice File I/O (Exercise)

Class Materials

Each student receives a comprehensive set of materials, including course notes and all class examples.

Class Prerequisites

Experience in the following is required for this C/C++ class:

  • Basic understanding of computer programming concepts
  • Experience with at least one programming language such as Python or Java
  • Familiarity with command-line interface operations
  • An interest in learning the C++ programming language
  • Access to a computer with an appropriate development environment for C++ setup

Have questions about this course?

We can help with curriculum details, delivery options, pricing, or anything else. Reach out and we’ll point you in the right direction.

}