     typedef        
. ,   TAnyClass typedef    
CLASS_COUNTER     int: 

    class TAnyClass { 
    public: 
       typedef int CLASS_COUNTER;      //   typedef static 
       CLASS_COUN?ER ClassCount;  //   
    public: 
       TAnyClass() { ClassCount++; }
       ~TAnyClass() { ClassCount--; } 
    };

           CLASS_COUNTER  
 ClassCount.      ,   
    : 

    TAnyClass::CLASS_COUNTER TAnyClass::ClassCount; 

           .    
TAnyClass  typedef CLASS_COUNTER,     
 ClassCount,     .    
        
  : 

    TAnyClass *cp1,  *2,  *;     //     . 
    1 = new TAnyClass;	//    
    2 = new TAnyClass;	// 
     = new TAnyClass;	// 
    cout  "There are "  TAnyClass::ClassCount  " objects\n"; 

       3.  ,     
 ClassCount.     .   
  : 

    class TAnyClass { 
    public: 
       struct ClassStruct { 
          int x; int y; 
       }; 
    };

           TAnyClass::ClassStruct: 

    TAnyClass::ClassStruct k; 

    k     ,    : 

       k.x = 1; 
       k.y = 2; 

             
     : 

    class TAnyClass { 
    public: 
       class ClassClass { 
          int x; 
          int y; 
       public: 
          ClassClass() { x = 1;  = 2;  } ;
          nt GetX(void) { return x;   } 
          int GetY(void) { return y;   } 
       }; 
    }; 

         TAnyClass      
ClassClass.         : 

    TAnyClass::ClassClass k; 
    cout  "k.x == "  k.GetX()  '\n'; 
    cout  "k.y == "  k.GetY()  '\n'; 

            ,   
 . (       
  :        
     .    ,  
        ,   . 

      fast this 

     Borland C++ 3.1     ,   
  fast this,       
 - .   


     15.   C++  399
