Boost C++ Libraries Home Libraries People FAQ More

PrevUpHomeNext

Class date

boost::gregorian::date — A date type based on gregorian_calendar.

Synopsis

// In header: <boost/date_time/gregorian/greg_date.hpp>


class date {
public:
  // types
  typedef gregorian_calendar::year_type        year_type;       
  typedef gregorian_calendar::month_type       month_type;      
  typedef gregorian_calendar::day_type         day_type;        
  typedef gregorian_calendar::day_of_year_type day_of_year_type;
  typedef gregorian_calendar::ymd_type         ymd_type;        
  typedef gregorian_calendar::date_rep_type    date_rep_type;   
  typedef gregorian_calendar::date_int_type    date_int_type;   
  typedef date_duration                        duration_type;   

  // construct/copy/destruct
  date();
  date(year_type, month_type, day_type);
  explicit date(const ymd_type &);
  explicit date(const date_int_type &);
  explicit date(date_rep_type);
  explicit date(special_values);

  // public member functions
  date_int_type julian_day() const;
  day_of_year_type day_of_year() const;
  date_int_type modjulian_day() const;
  int week_number() const;
  date_int_type day_number() const;
  date end_of_month() const;
};

Description

This class is the primary interface for programming with greogorian dates. The is a lightweight type that can be freely passed by value. All comparison operators are supported.

date public construct/copy/destruct

  1. date();
    Default constructor constructs with not_a_date_time.
  2. date(year_type y, month_type m, day_type d);
    Main constructor with year, month, day.
  3. explicit date(const ymd_type & ymd);
    Constructor from a ymd_type structure.
  4. explicit date(const date_int_type & rhs);
    Needed copy constructor.
  5. explicit date(date_rep_type rhs);
    Needed copy constructor.
  6. explicit date(special_values sv);
    Constructor for infinities, not a date, max and min date.

date public member functions

  1. date_int_type julian_day() const;
    Return the Julian Day number for the date.
  2. day_of_year_type day_of_year() const;
    Return the day of year 1..365 or 1..366 (for leap year)
  3. date_int_type modjulian_day() const;
    Return the Modified Julian Day number for the date.
  4. int week_number() const;
    Return the iso 8601 week number 1..53.
  5. date_int_type day_number() const;
    Return the day number from the calendar.
  6. date end_of_month() const;
    Return the last day of the current month.

PrevUpHomeNext