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
Fri, May 3
Templates (recorded)
Due: P5
Due: P6
Watch: Recorded Demos
Quiz: week 6 and before (cumulative)
Wed, Mar 20
Basics (in person)
- course logistics
- why learn C++?
Watch: Lecture
Slides: PDF
Anki Flashcards: Deck
Fri, Mar 22
Basics (recorded)
- types
- if, for, functions
- bitsets, vectors, pairs
Watch: Recorded Demos
Anki Flashcards: Deck
Wed, Mar 27
C Things (in person)
- building code
- structs
- pointers
Slides: PDF
Anki Flashcards: Deck
Fri, Mar 29
C Things (recorded)
- pointer bugs
- gdb debugger
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
Fri, May 3
Templates (recorded)
Due: P5
Due: P6
Watch: Recorded Demos
Quiz: week 6 and before (cumulative)
Wed, Apr 3
More Memory (in person)
- stack vs. heap
- new/delete
- arrays
- const, references
Slides: PDF
Worksheet: PDF
Anki Flashcards: Deck
Fri, Apr 5
More Memory (recorded)
- references with auto
- pointer arithmetic
- double pointers
- strings
- constexpr
Due: P1
Released: P3 (references and conversions)
Anki Flashcards: Deck
Quiz: week 2 and before (cumulative)
Wed, Apr 10
Object Oriented Programming (in person)
- classes and methods
- public/private/friend visibility
- constructors, copy constructors, destructors
Slides: PDF
Anki Flashcards: Deck
Fri, Apr 12
Object Oriented Programming (recorded)
Watch: Recorded DemosDue: 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
Fri, May 3
Templates (recorded)
Due: P5
Due: P6
Watch: Recorded Demos
Quiz: week 6 and before (cumulative)
Wed, Apr 17
Review and Vectors (in person)
- practice: constructors, destructors, and copying
- vector concepts
Slides: PDF
Worksheet: PDF
Anki Flashcards: Deck
Fri, Apr 19
Vectors and Movement (recorded)
Watch: Recorded DemosDue: P3
Released: P5 (copying and moving)
Quiz: week 4 and before (cumulative)
Wed, Apr 24
Smart Pointers (in person)
- RAII
- files
- unique_ptr
- shared_ptr
Slides: PDF
Worksheet: PDF
Anki Flashcards: Deck
Fri, Apr 26
Smart Pointers (recorded)
Due: P4Watch: Recorded Demos
Released: P6 (tables)
Quiz: week 5 and before (cumulative)
Week 7
Fri, May 3
Templates (recorded)
Due: P5
Due: P6
Watch: Recorded Demos
Quiz: week 6 and before (cumulative)
Fri, May 3
Templates (recorded)
Due: P5Due: P6
Watch: Recorded Demos
Quiz: week 6 and before (cumulative)