CS I FINAL EXAM STUDY TOPICS Final Exam Date/Time: Thursday, December 13, 12:45-3:00pm in MSB 228 Exam week consultation: Monday, December 10, 8am-12pm, 1pm-5pm in MSB 356 TOPICS (not an exhaustive list) * classes - advantages over structures, public/private members, mutators/accessors, constructors, friend functions, static constants * pointers - definition and usage, pointers and constants, array names and pointers, null/loose pointer, pointers to objects * dynamic memory allocation - static/dynamic/automatic variables, allocation for basic types, for arrays, for objects, allocation of objects with dynamic members: the big three (destructor, copy constructor, assignment overloading) * vectors - advantages over (raw) arrays, declaring, adding/removing element, comparing/assigning vectors, passing by value/reference returning, iterators * exception handling - try/catch, exception types, default exceptions, catching outside functions, standard exceptions * recursion - purpose, program stack, function frame, difference between function invocation and function definition, stopping case/infinite recursion, recursion vs. iteration * program diagrams - purpose, structural vs. behavior diagrams, class diagrams (multiplicity, aggregation), object diagrams, use case diagrams (actors, system boundary, use case) interaction/sequence diagrams (processes and messages)