Schedule and Lecture Notes

Lecture slides will be posted as they become available.

Labs are also linked from the website. The links are available from Monday of the week the lab is assigned through Friday of the following week.

Week Topics Lab Project/Exam
8/26 Course Introduction
No Lab --
8/31
9/2
C++ Primer
Functions
Lab 1: Review of Emacs and UNIX --
9/9 Pointers and Dynamic Memory No Lab (Labor Day Holiday) --
9/14
9/16
Classes and Objects Lab 2: C-strings and Functions Project 1 assigned on Mo (9/14)
9/21
9/23
Classes and Objects
Exceptions
Lab 3: Introduction to Google Test Project 1 due by 2100 on Th (9/24)
9/28
9/30
Catch-up and Review
Exam 1
Lab 4: Creating a C++ Class Exam 1 on We (9/30)
10/5
10/7
Operator Overloading
Copy and Assignment
Lab 5: More Practice with C++ Classes Project 2 assigned on Mo (10/5)
10/12
10/14
Inheritance Lab 6: Linked Lists Project 2 due by 2100 on Th (10/15)
10/19
10/21
Inheritance
Polymorphism
Lab 7: Debugging with gdb Project 3 assigned on Mo (10/19)
10/26
10/28
Polymorphism
Catch-up and Review
Lab 8: Inheritance Project 3 due by 2100 on Th (10/29)
11/2
11/4
Exam 2
Poymorphism
Lab 9: Polymorphism Exam 2 on Mo (11/2)
11/9
11/11
Function Templates
Class Templates
Lab 10: Operator Overloading
Project 4 assigned on We (11/11)
11/16
11/18
STL
Iterators
Lab 11: Templates Extra Credit on Project 4 if submitted by 2100 on Th (11/19)
11/23
11/25
Hard Topics (Mo)
No Class (We)
No Lab Project 4 due by 2100 on Mo (11/23)
Extra Credit Quiz on Bb We (11/25)
11/30
12/2
Advanced Topics Lab 12: Exceptions Project 5 assigned on Mo (11/30)
12/7
12/9
Catch-up and Review -- Project 5 due by 2100 on Mo (12/7)
12/11 Final Exam -- Final Exam, Friday (12/11), 1300 – 1500.