Course Schedule

Week 1

Wed, Mar 20
Basics (in person)
  • course logistics
  • why learn C++?
Read: Syllabus
Watch: Lecture
Slides: PDF
Anki Flashcards: Deck
Fri, Mar 22
Basics (recorded)
  • types
  • if, for, functions
  • bitsets, vectors, pairs
Released: P1 (Tooling and Basics)
Watch: Recorded Demos
Anki Flashcards: Deck

Week 2

Wed, Mar 27
C Things (in person)
  • building code
  • structs
  • pointers
Watch: Lecture
Slides: PDF
Anki Flashcards: Deck
Fri, Mar 29
C Things (recorded)
  • pointer bugs
  • gdb debugger
Watch: Recorded Demos
Released: P2 (structs and pointers)
Anki Flashcards: Deck
Quiz: week 1

Week 3

Wed, Apr 3
More Memory (in person)
  • stack vs. heap
  • new/delete
  • arrays
  • const, references
Watch: Lecture
Slides: PDF
Worksheet: PDF
Anki Flashcards: Deck
Fri, Apr 5
More Memory (recorded)
  • references with auto
  • pointer arithmetic
  • double pointers
  • strings
  • constexpr
Watch: Recorded Demos
Due: P1
Released: P3 (references and conversions)
Anki Flashcards: Deck
Quiz: week 2 and before (cumulative)

Week 4

Wed, Apr 10
Object Oriented Programming (in person)
  • classes and methods
  • public/private/friend visibility
  • constructors, copy constructors, destructors
Watch: Lecture
Slides: PDF
Anki Flashcards: Deck
Fri, Apr 12
Object Oriented Programming (recorded)
Watch: Recorded Demos
Due: P2
Released: P4 (object oriented programming)
Anki Flashcards: Deck
Quiz: week 3 and before (cumulative)

Week 5

Wed, Apr 17
Review and Vectors (in person)
  • practice: constructors, destructors, and copying
  • vector concepts
Watch: Lecture
Slides: PDF
Worksheet: PDF
Anki Flashcards: Deck
Fri, Apr 19
Vectors and Movement (recorded)
Watch: Recorded Demos
Due: P3
Released: P5 (copying and moving)
Quiz: week 4 and before (cumulative)

Week 6

Wed, Apr 24
Smart Pointers (in person)
  • RAII
  • files
  • unique_ptr
  • shared_ptr
Watch: Lecture
Slides: PDF
Worksheet: PDF
Anki Flashcards: Deck
Fri, Apr 26
Smart Pointers (recorded)
Due: P4
Watch: Recorded Demos
Released: P6 (tables)
Quiz: week 5 and before (cumulative)

Week 7

Wed, May 1
Inheritance (in person)
Watch: Lecture
Slides: PDF
Worksheet: PDF
Fri, May 3
Templates (recorded)
Due: P5
Due: P6
Watch: Recorded Demos
Quiz: week 6 and before (cumulative)