home *** CD-ROM | disk | FTP | other *** search
/ The C Users' Group Library 1994 August / wc-cdrom-cusersgrouplibrary-1994-08.iso / listings / v_11_03 / 1103100a < prev    next >
Text File  |  1993-01-05  |  1KB  |  52 lines

  1. // date7.h
  2.  
  3. class ostream;
  4.  
  5. class Date
  6. {
  7.     int month;
  8.     int day;
  9.     int year;
  10.  
  11. public:
  12.     // Constructors
  13.     Date()
  14.       {month = day = year = 0;}    
  15.     Date(int m, int d, int y)
  16.       {month = m; day = d; year = y;}
  17.  
  18.     // Accessor Functions
  19.     int get_month() const
  20.       {return month;}
  21.     int get_day() const
  22.       {return day;}
  23.     int get_year() const
  24.       {return year;}
  25.  
  26.     Date operator-(const Date& d2) const;
  27.     Date& operator-()
  28.       {month = -month; day = -day; year = -year;
  29.        return *this;}
  30.  
  31.     int compare(const Date&) const;
  32.  
  33.     // Relational operators
  34.     int operator<(const Date& d2) const
  35.       {return compare(d2) < 0;}
  36.     int operator<=(const Date& d2) const
  37.       {return compare(d2) <= 0;}
  38.     int operator>(const Date& d2) const
  39.       {return compare(d2) > 0;}
  40.     int operator>=(const Date& d2) const
  41.       {return compare(d2) >= 0;}
  42.     int operator==(const Date& d2) const
  43.       {return compare(d2) == 0;}
  44.     int operator!=(const Date& d2) const
  45.       {return compare(d2) != 0;}
  46.  
  47.     // I/O operators
  48.     friend ostream& operator<<(ostream&, const Date&);
  49.     friend istream& operator>>(istream&, Date&);
  50. };
  51.  
  52.