      

             
.  ,      
    ,   ,   
 (+)   (-).    ,  TAnyClass, 
          
 :

    TAnyClass c1,  2,  ; 

           :	

     = 1 + 2; 

             
,      . ,    
 (+)   .   (-)   
.       ,   
  . ,    (!),  , 
    .       (-). 
 -count    count. 
            
,   ++,  .   
  ,       - 
.    ,     
    - . 

     - 

           
   ZZ: 

    class ZZ { 
    public: 
       friend ZZ operator+(ZZ a,  ZZ b); 
       friend ZZ operator-(ZZ a,   ZZ b);
       friend ZZ operator*(ZZ a,   ZZ b);
       friend ZZ operator/(ZZ a,   ZZ b);
       // ...  ,     
    };
 
      ZZ    -. (  
 ZZ     ,    .)  
  operator+(), operator-O, operator*()  operator/().    
     +, -, *  /  ,  
    C++       operator  
  ,   . 15.1. 

     15.1.  ,     

    /	+	-	%	~	&	| 
    1	,	=	<	>	<-	>= 
    H-			==	1 =	44	II 
    /=	%=	"=	&=	1=	=	-= 
    
    =                =	->	->*	[]	0	new	delete 

     +, -, *  &     ,    
 .  ., .*, ::  sizeof    . 
 ,  =, (), []  ->    
-. (    -   
 ). 
       ZZ      
  .  1     

    friend ZZ operator-(ZZ a, ZZ b); 

       ,    operator+O 
       .    
 ZZ (      ),     
   ZZ. (     
 "" .        
.)   ,   .operator+()    
,    ,   ,  
  . ,   operator+()
   ,    ZZ. 


    372      III.   ANSI C++ 
