Consider the person_interface and 1ist_node_interface classes described in Section 10.5.1 (page 569). If student is derived from person. interface and list node_interface, explain what happens in the following method call:
student s;
person *p = ks;
..
p.debug_print () ;
student s;
person * $\mathrm{p}=\mathrm{k}$;
...
p. debug-print ();
You may wish to use a diagram of the representation of a student object to illustrate the method lookups that occur and the views that are computed. You may assume the implementation described at the beginning of Section 10.5 , without shared inheritance.