316                                                      11. 

void vect_heap_handler(int sig)
{

//      

//  

J

        
,   set_new_handler (),    7.12,
 new  delete,  . 215.

,   ,       -
    ,    . , -
      .  ,
        . 
         
   .   , -
   .      
    .   -
  - .     -
     ,  , 
     (raise).

11.3.  C++

C++       . 
     ,   
signal.h,   SIGFPE (   ).   -
    try ( '). , -
   catch (),    try.

   C++      try   
throw ().     -
,   ,      try.   :

  vect4.h

vect::vect(int n): size(n)
{

if (n < 1)       // 

'       , 
 ,   :  (exception),  (throw), -
 (raise),   (try block),  (catch),  (handler).  ,
   ()     (   , -
    , ,     -
).       . 
   ,  , ,    
   C++ throw        -
,          -
 (    ,      
C++, .    ).  . .