178  6.    

 =  -> next;

b = b -> next;

}

      .     
 .   ,    ,
     .   , 
  .        
   ;     .  
      ,      
     .

     ,     -
       rest_of ().

void polynomial::rest_of(term* rest)

{

term* temp;

while (rest) {

temp = new term(rest -> exponent, rest -> coefficient);

assert(temp != 0);

prepend(temp) ;

rest = rest -> next;

j

//c.plus(a,b)   = a + b;

void polynomial::plus(polynomial a, polynomial b)
{

term *aterm = a.h, *bterm = b.h;

release();                    //  ,

//    b
h = 0;

while (aterm && bterm)         // 

add_term(aterm, bterm);

if (aterm)

rest_of(aterm) ;

else if (bterm)

rest_of(bterm) ;

reverse() ;

degree = ((h) ? h -> exponent: 0);

}

 polynomial: : plus ()  add_term ()  rest_of ()  -
     (    ),
   reverse ()   .   -
  print ()  release () (.  21  . 189).