41 compile-checked programs · C++17

Examples that follow the learning path.

Every filename begins with its lecture reference. Each example uses only concepts taught by that lecture; motivating previews show results without exposing later syntax.

38 examples

0102030405060708091011121314151617181920212223
L01

Programming & Problem Solving

Minimal program structure and observable output.

L02

Types & Representation

Range, precision, constants, inference, and conversion.

L03

Expressions, Scope & Program State

Names, visibility, storage duration, and linkage.

L04

Decisions & Safe Branching

Ordered safety rules and explicit boundaries.

L05

Iteration I · while & Input Validation

Condition-controlled repetition and progress.

L06

Iteration II · for, Nested Loops & Invariants

Counted ranges and row–column combinations.

L07

Functions I · Contracts & Calls

Value parameters, return values, and decomposition.

L08

Functions II · References & Decomposition

References, const access, and call structure.

L09

Arrays I · Fixed Sequences & Traversal

Fixed extents, indices, bounds, and traversal.

L10

Arrays II · Matrices & std::vector

Multiple dimensions and runtime-sized sequences.

L11

Strings & Text Processing

Owned text, input, classification, and validation.

L12

Debugging & Assessment Debrief

Contracts, boundary cases, integration, and regression tests.

L13

Records, Pointers & Memory Layout

Structured records, addresses, indirection, and layout.

L14

Dynamic Memory & Linked Structures

Ownership, allocation, smart pointers, and links.

L15

Linear Structures & Array Algorithms

ADTs, search, sort, stacks, and queues.

L16

Recursive Decomposition in Practice

Base cases, progress, and linked transformations.

L17

Search Trees, Heaps & Sorting

Algorithms that preserve ordering and structural invariants.

L18

Object Design & Value Semantics

Construction, copying, invariants, and operators.

L19

Friend Access & Inheritance Foundations

Narrow privilege and justified is-a relationships.

L20

Inheritance & Runtime Polymorphism

Virtual interfaces, safe ownership, and factories.

L21

Polymorphic Data Structures

Heterogeneous ownership behind a common interface.

L22

Applied Object Systems

Domain models, collection algorithms, graphs, and patterns.

L23

Recursive & Polymorphic Capstones

Buckets, matrices, trees, and hierarchy applications.