home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / VSCPPv7.zip / VACPP / IBMCPP / smarts / CPPDLL / CPPDLL.CPP next >
Text File  |  1995-06-02  |  1KB  |  77 lines

  1.  
  2. %PROLOG%
  3.  
  4. //----------------------------------------------
  5. // %FILE_NAME%.c - Source file for a C++ DLL
  6. //----------------------------------------------
  7.  
  8. #include "%FILE_NAME%.hpp"
  9.  
  10. /***************************/
  11. /* Defining Static Objects */
  12. /***************************/
  13.  
  14. int area::objectCount = 0;
  15. int rectangle::objectCount = 0;
  16. int triangle::objectCount = 0;
  17.  
  18. /****************************/
  19. /* Defining the Base Class  */
  20. /****************************/
  21.  
  22. area::area(void)
  23.    {
  24.    ++area::objectCount;
  25.    }
  26.  
  27. void area::setarea(double d1 , double d2)
  28.          {
  29.          dim1 = d1;
  30.          dim2 = d2;
  31.          }
  32.  
  33. void area::getDim(double &d1, double &d2)
  34.          {
  35.          d1 = dim1;
  36.          d2 = dim2;
  37.          }
  38.  
  39. double area::getArea()
  40.          {
  41.          return -1 ;    /* not override */
  42.          }
  43.  
  44. /*******************************/
  45. /* Defining a   Derived class  */
  46. /*******************************/
  47.  
  48. double rectangle::getArea()
  49.          {
  50.          double d1,d2;
  51.          getDim (d1,d2);
  52.          return d1*d2;
  53.          }
  54.  
  55. rectangle::rectangle(void)
  56.    {
  57.    ++rectangle::objectCount;
  58.    }
  59.  
  60. /*******************************/
  61. /* Defining a   Derived class  */
  62. /*******************************/
  63.  
  64.  
  65. triangle::triangle()
  66.    {
  67.    ++triangle::objectCount;
  68.    }
  69.  
  70. double triangle::getArea()
  71.    {
  72.    double d1,d2;
  73.    getDim (d1,d2);
  74.    return .5*d1*d2;
  75.    }
  76.  
  77.