CISC 181
Review for Exam #3
Disclaimer - while this list SHOULD cover everything, it MAY not. Don't argue after the final if there happens to be something on the final that wasn't mentioned in this list.
** EXTRA HELPFUL WARNING - This is a LOT of material. Exam 1 was a lot of review, so you maybe didn't have to study too much, and Exam 2, while hard material, there wasn't much of it. This is both a LOT of material and fairly challenging, and this test is worth 20% of your grade vs. 15% for the others tests. Finish strong!
Topics ------ What a Class is Declarations (.h) and Implementations (.cc) How we split these up, how to #include a custom class, how to compile them Preventing multiple inclusion Access Modifers (public / protected / private) Static members in classes Classes as atomic Objects Encapsulated Functionality / Information Hiding Controlling Access to Data members thru get/set calls (data = private) Constructors Default arguments in constructors/functions Destructors Class assignment, = operator, Copy constructor, what C++ does if you don't write on yourself Rule of 3 Creating objects on the heap Principal of least privilege Class composition (classes inside other classes) the this pointer - cascading function calls Friend functions - how/why/what they are Operator Overloading - how/why/what they really are/what not to do overloading <<, pre/post increment Inheritance - Single vs. Multiple - which does C++ support Relationships between objects (is-a, has-a) Accessing base class members - protected access vs. protected member functions Derived Classes - overriding functions Order which constructors/destructors run Implicit vs. Explicit Construction Class Pointers Virtual Functions Dynamic Binding (runtime) and Static Typing (compile time)