                                                           307

8.     .  
   ,      . -
    .     -
,     . 
,       
 , ,     . -
,   , ,    -
  ,    .

9.       ,    -
.      :

virtual _ = 0;

     ,    -
 .       
(deferred method). ,       , -
  . ,      
  .       -
 ,          .



1.    student Hgrad_student -, 
           (. -
 10.1,  ,  . 282).  student: :read 
 grad_srudent: :read.

2.  ,      
    .  
main (),    10.2,    , 
. 284.        ?

reinterpret_cast<grad_student*>(ps) -> print();

dynamic_cast<student*>(pgs) -> print();

pgs -> student::print();

ps -> grad_student::print();

   .

3.   D   10.4,  ,  . 289, :

class D2 : private  {
public:

B::i;         //  
void print_i()
{

cout  i  "  D2: B::i "
 B::i  endl ;

}
};

    ?