Week 13 Class 20 Tue Apr 07 Posted: Apr 07
After Class
Announcements
Exercise 71: Static Dispatch
Feedback is in the file oracle.txt in the branch feedback in your repository. The file oracle.txt is the difference between the oracle (with the correct answers) and your Base.cpp. If the oracle.txt is empty, then that means your answer is correct (reflected in your score). Even if your answer is correct the oracle.txt may show some differences. The differences were manually examined and I used more direct techniques to determine if there were any dynamic dispatch in your answer.
There is a strong possibility that this will be in a question on the Final Exam.
Agenda
Exercise 72: Names II
Using the feedback in the Report.md, fix your Names code.
If you have no changes to make (based on the feedback), leave the code alone.
Exercise 73: Dynamic Dispatch
The repository Base has a set of various method call situations, and a way at run time (using assert()) to verify which method is actually called.
assert() in the code that indicates (via a string) which method is called, e.g., for m2() is it "Base::m2()", "Derived::m2()", or "DerivedDerived::m2()"?assert(), e.g.,Handle each assertion one at a time in order, compiling and running the program (i.e., make run) after each assertion is completed. The assertion you edited should pass, and you should be onto the next assertion.
You are required to commit for each block of statements in the main program.
Unless otherwise noted, exercises are due by 3:30 pm on Wed Apr 08