Schedule and Lecture Notes

Lecture slides are posted on Blackboard and are made available at least one day prior to class.

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

Week Topics Lab Project/Exam
1/26 Course Introduction
C++ Primer
Lab 1: Review of Emacs and Linux --
2/2 C++ Primer Lab 2: Operators and Precedence --
2/9 C++ Primer
Functions
Lab 3: C-strings and Functions --
2/16 Functions
Classes and Objects
Lab 4: Introduction to Google Test Project 1 assigned on Mo (2/16)
2/23 Classes and Objects Lab 5: Beginning C++ Classes Project 1 due before 5:00 pm on Tr (2/26)
3/2 Catch-up and Review
Exam 1
-- Exam 1 on We (3/4) or Tr (3/5)
3/9 Operator Overloading Lab 6: Creating a Complete C++ Class Project 2 assigned on Mo (3/9)
3/16 SPRING BREAK -- --
3/23 Dynamic Memory and Pointers
Copy and Assignment
Lab 7: Testing Project 2 due before 5:00 pm on Tr (3/26)
3/30 Catch-up / Inheritance
Inheritance
Lab 8: Operator Overloading Project 2 due before 5:00 pm on Mo (3/30)
Project 3 assigned on Mo (3/30)
4/6 Inheritance
Catch-up and Review
Lab 9: Dynamic Memory and Linked Lists Project 3 due before 5:00 pm on Tr (4/9)
4/13 Exam 2
Polymorphism
-- Exam 2 on Mo (4/13) or Tu (4/14)
4/20 Polymorphism
Exceptions
Lab 10: Inheritance Project 4 assigned on Mo (4/20)
Project 4 assigned on We (4/22)
4/27 Exceptions
Templates
Lab 11: Polymorphism Project 4 due before 5:00 pm on Tr (4/30)
5/4 Templates
STL and Iterators
Lab 12: Exceptions Project 4 due before 5:00 pm on Mo (5/4)
5/11 Catch-up and Review -- --
5/18 Final Exam -- Final Exam, 8:00 – 10:00 am, Mo (5/18). Location TBD.