Lectures
- Lecture 1 — Introduction to C++ [slides] [notes]
- Lecture 2 — Variables [slides] [notes]
- Lecture 3 — Strings [slides] [notes]
- Lecture 4 — Expressions [slides] [notes]
- Lecture 5 — Decisions and `while` [slides] [notes]
- Lecture 6 — Loops, Jumps, and `switch` [slides] [notes]
- Lecture 7 — Function Basics [slides] [notes]
- Lecture 8 — Advanced Functions [slides] [notes]
- Lecture 9 — Numbers: Bases and Conversions [slides] [notes]
- Lecture 10 — Two's Complement and Bit Manipulation [slides] [notes]
- Lecture 11 — Array and Vector Basics [slides] [notes]
- Lecture 12 — Mutation and Iteration [slides] [notes]
- Lecture 13 — I/O Streams [slides] [notes]
- Lecture 14 — std::format and std::print [slides] [notes]
- Lecture 15 — Exceptions [slides] [notes]
- Lecture 16 — From Struct to Class [slides] [notes]
- Lecture 17 — Behavior and Operators [slides] [notes]
- Lecture 18 — Pointers, new/delete, and unique_ptr [slides] [notes]
- Lecture 19 — shared_ptr and Move Semantics [slides] [notes]
- Lecture 20 — Special Members and Friends [slides] [notes]