Class Date | Important Stuff | Topics Covered | Notes |
Mon, Aug 21: | - | introductory stuff: syllabus, programming and languages, history, how to write and compile a simple program, some thoughts about programming in general | notes |
Weds, Aug 23: | - | variables, data types, mathematical expressions, conditional execution (if statements). Wrote a simple program in class to convert celsius temperatures to fahrenheit. | notes tempconvert.cpp |
Mon, Aug 28: | - | loops, basic function stuff. In-class code to calculate the Fibonacci sequence, type conversion. | notes fib.cpp |
Weds, Aug 30: | Project 1 Assigned | Function day: function prototypes, pass-by-value, pass-by-reference, default arguments, function overloading. Also discussed project one. | notes |
Mon, Sep 4: | Labor Day! - No Class | ||
Weds, Sep 6: | - | Declaring and using arrays, passing them to functions, multi-dimensional arrays, declaring and using pointers, and why pointers are the greatest thing since sliced bread | notes |
Fri, Sep 8: | Project 1 Due - (not a class day) | ||
Mon, Sep 11: | - | Massive review of pointers and arrays, pointer arithmetic, scope and lifetime, static vs dynamic memory allocation | notes |
Weds, Sep 13: | - | C-style strings, null terminators, etc. Plus more fun with pointers along the way. | notes strfuncs.cpp |
Mon, Sep 18: | Project 2 Assigned | A bit more on C-style strings, structures and some of their uses, linked lists ala C. Discussed project 2. | notes simplelinkedlist.cpp |
Weds, Sep 20: | - | Introduction to C++ classes, some general discussion of OOP and related concepts, and an introduction to the myriad uses of the const keyword. | notes circle.cpp |
Mon, Sep 25: | - | constructors, destructors, and how to separate stuff into multiple source files (and some of the methods used to make all that work nicely) | notes |
Weds, Sep 27: | Project 2 Due | Operator overloading and why it's the awesomest thing since pointers | notes |
Mon, Oct 2: | - | More on operator overloading, and conversion operators, and the basic implementation of a simple string class | notes str.cpp str.h |
Weds, Oct 4: | Project 3 Assigned | We spent this class delving into the deep mysteries of the str class. Also talked about Project 3. | (no real notes today) |
Mon, Oct 9: | - | Friends (in the C++ context, not the TV show), and static functions/variables. | notes |
Weds, Oct 11: | - | Midterm review. This would be a good day to show up. Just sayin', is all. | - |
Fri, Oct 13: | Project 3 Due - (not a class day) | ||
Mon, Oct 16: | Midterm (in class) | ||
Weds, Oct 18: | Project 4 Assigned | Discussed midterm results and project 4. | - |
Mon, Oct 23: | - | Talked about a few conditional execution structures and related topics we hadn't gotten around to before; began talking about inheritance. | notes |
Weds, Oct 25: | - | Introduction to polymorphism, object slicing, virtual methods, abstract methods and classes | notes |
Mon, Oct 30: | Project 4 Due | Multiple inheritance, in all its amazing glory | notes |
Weds, Nov 1: | - | Introduction to templates, template programming, and the basics of the STL | notes |
Mon, Nov 6: | no class | ||
Weds, Nov 8: | Project 5 Assigned | dynamic casting, the basics of error handling, C++ exceptions | notes |
Mon, Nov 13: | - | C++ iostreams and some slightly more advanced uses of them, file I/O using ifstream/ofstream | notes |
Weds, Nov 15: | - | Bit Twiddling: the use of the C/C++ bitwise operators to mess with individual bits, the uses of doing this, combining/extracting boolean flags | notes |
Fri, Nov 17: | Project 5 Due - (not a class day) | ||
Mon, Nov 20: | Thanksgiving Break - No Class | ||
Weds, Nov 22: | Thanksgiving Break - No Class | ||
Mon, Nov 27: | Project 6 Assigned | an introduction to the C programming language, why it's important, the essential differences between C and C++ | notes |
Weds, Nov 29: | - | Today, we discuss the mysterious wonders and dark secrets of the C preprocessor | notes |
Mon, Dec 4: | - | smart pointers, an application of all this C++ stuff we've been talking about. Also, evaluation form day. | notes |
Weds, Dec 6: | - | Final Review | - |
Fri, Dec 8: | Project 6 Due - (not a class day) | ||
Tues, Dec 12: | Final Exam (4:30 - 6:30 PM), 218 MLH |