C++
Curriculum
C++ · Systems

C++ Tutorial

A complete C++ path from syntax and memory to OOP, STL, smart pointers, concurrency, and systems capstones.

65 lessonsBeginner → ProSystems
Start from the beginning

Curriculum

Work through each section in order. Every lesson ends with practice and key points so the idea sticks.

Beginner

Getting Started

3 lessons · ~33 min
  1. 1
    Welcome to C++

    Meet modern C++ and how this InTelleX path is organized.

  2. 2
    Install a C++ Compiler

    Set up g++/clang++ and verify your toolchain.

  3. 3
    Your First C++ Program

    Write, compile, and run a tiny program end to end.

Beginner

Language Basics

4 lessons · ~44 min
  1. 4
    Variables & Fundamental Types

    int, double, char, bool, and type safety basics.

  2. 5
    Constants & const

    Use const and constexpr for safer values.

  3. 6
    Operators & Expressions

    Arithmetic, comparison, logical, and assignment operators.

  4. 7
    Input & Output with iostream

    cin, cout, and formatting basics.

Beginner

Control Flow

2 lessons · ~22 min
  1. 8
    Conditionals

    if, else if, else, and switch.

  2. 9
    Loops

    for, while, and do-while with clear examples.

Beginner

Functions

3 lessons · ~33 min
  1. 10
    Functions

    Declare, define, and call functions with parameters.

  2. 11
    Function Overloading

    Multiple functions with the same name and different signatures.

  3. 12
    Default Arguments

    Provide optional parameters with defaults.

Beginner

Data Structures

4 lessons · ~44 min
  1. 13
    Arrays

    Fixed-size arrays and common pitfalls.

  2. 14
    std::string

    Create, concatenate, and inspect strings.

  3. 15
    std::vector

    Dynamic arrays with push_back and size.

  4. 16
    Range-based for

    Iterate containers cleanly with for-each style loops.

Beginner

Memory Basics

3 lessons · ~33 min
  1. 17
    References

    Alias variables and pass by reference.

  2. 18
    Pointers

    Addresses, dereference, and nullptr.

  3. 19
    new and delete

    Dynamic allocation and why modern C++ prefers RAII.

Beginner

User Types

4 lessons · ~44 min
  1. 20
    Structs

    Group related data into simple types.

  2. 21
    Classes Intro

    Encapsulation with public and private members.

  3. 22
    Constructors & Destructors

    Initialize objects and clean up resources.

  4. 23
    Member Functions

    Define behavior on your types.

Beginner

Projects

2 lessons · ~29 min
  1. 24
    Headers & Source Files

    Split declarations and definitions across files.

  2. 25
    Project: CLI Calculator

    Build a small calculator using functions and loops.

Intermediate

Object-Oriented C++

5 lessons · ~65 min
  1. 26
    Encapsulation in Depth

    Design classes with clear public APIs.

  2. 27
    Inheritance

    Derive classes and reuse behavior.

  3. 28
    Polymorphism & virtual

    Call the right method through base pointers.

  4. 29
    Abstract Classes

    Pure virtual functions and interfaces.

  5. 30
    Operator Overloading

    Define +, ==, and stream operators carefully.

Intermediate

Standard Library

4 lessons · ~52 min
  1. 31
    STL Overview

    Containers, iterators, and algorithms map.

  2. 32
    map & set

    Associative containers for keys and unique values.

  3. 33
    STL Algorithms

    sort, find, accumulate, and transform.

  4. 34
    Iterators

    Traverse containers with begin/end idioms.

Intermediate

Modern C++

4 lessons · ~52 min
  1. 35
    Lambdas

    Inline function objects for algorithms.

  2. 36
    auto & type deduction

    Let the compiler deduce types safely.

  3. 37
    unique_ptr & shared_ptr

    Own resources without manual delete.

  4. 38
    Move Semantics

    std::move and rvalue references at a practical level.

Intermediate

Reliability

2 lessons · ~26 min
  1. 39
    Exceptions

    try/catch and when not to throw across APIs.

  2. 40
    File I/O

    Read and write text files with fstream.

Intermediate

Projects

4 lessons · ~52 min
  1. 41
    Namespaces

    Organize symbols and avoid collisions.

  2. 42
    CMake Basics

    Build multi-file projects with CMake.

  3. 43
    Debugging with gdb/lldb

    Breakpoints, backtraces, and inspecting variables.

  4. 44
    Unit Testing Intro

    Structure small tests for functions and classes.

Intermediate

Templates

2 lessons · ~26 min
  1. 45
    Function Templates

    Write generic functions with templates.

  2. 46
    Class Templates

    Generic containers and utility types.

Intermediate

Capstone Labs

2 lessons · ~38 min
  1. 47
    Project: Gradebook

    Build a gradebook with classes, vectors, and file save.

  2. 48
    Project: Todo CLI

    CRUD todos with persistence.

Advanced

Systems C++

3 lessons · ~48 min
  1. 49
    RAII Deep Dive

    Resource acquisition is initialization as a design rule.

  2. 50
    Rule of Five

    Copy/move constructors and assignment operators.

  3. 51
    Const Correctness

    Design APIs that cannot mutate by accident.

Advanced

Concurrency

3 lessons · ~48 min
  1. 52
    Threads Basics

    std::thread and joining workers.

  2. 53
    Mutex & Shared Data

    Protect critical sections with std::mutex.

  3. 54
    Atomics Overview

    When lock-free counters make sense.

Advanced

Performance

2 lessons · ~32 min
  1. 55
    Performance Mindset

    Measure first: cache locality, copies, and allocations.

  2. 56
    Compiler Optimization Flags

    -O2, -O3, and debug vs release builds.

Advanced

Reliability Advanced

2 lessons · ~32 min
  1. 57
    Undefined Behavior

    Recognize UB and write defined programs.

  2. 58
    Sanitizers (ASan/UBSan)

    Catch memory and UB bugs early.

Advanced

Design

1 lessons · ~16 min
  1. 59
    Useful Patterns in C++

    Factory, Strategy, and Observer in practical form.

Advanced

Systems Apps

2 lessons · ~32 min
  1. 60
    Networking Intro

    Sockets at a high level for systems apps.

  2. 61
    Embedded C++ Mindset

    Constraints: no heap thrash, careful types, predictability.

Advanced

Capstone

2 lessons · ~40 min
  1. 62
    Capstone: Mini HTTP Parser

    Parse request lines and headers from a buffer.

  2. 63
    Capstone: Thread Pool

    Queue tasks and run them on worker threads.

Advanced

Polish & Next Steps

2 lessons · ~32 min
  1. 64
    C++ Interview Review

    Pointers, OOP, STL, and move semantics checklist.

  2. 65
    Next Steps in C++

    Where to go: Boost, graphics, embedded, or distributed systems.