CIS 3142
Programming Paradigms in C++
Final Exam Topic List

As before, the exam is cumulative; below are the topics covered since the last exam.

Canonical Form

Although canonical form was on the last exam, it was presented fairly close to the exam, and many of you did not get a chance to complete the corresponding lab, so exam 2 covered only an overview. On this exam, you should be able to code the three functions of the form (copy constructor, assignment operator, and destructor). Of particular value is the array class presented in class, as well as the String class assigned as a lab.


You should be able to write a simple class and/or function template; in particular you should be able to take a 'normal' function and/or class, and be able to identify where the template parameter should go (i.e., the element type of an array, as shown in class).


You should know the basic concepts of the STL... that it stands for Standard Template Library, corresponds functionally to Java's Collection Framework, and is implemented using templates (and not inheritance, like Java). And as always, the labs (in particular Labs 7 and 8 which cover canonical form and templates) are useful for making sure you understand the above concepts.