| Home | Libraries | People | FAQ | More

## Class template years_duration

boost::date_time::years_duration — additional duration type that represents a logical year

## Synopsis

    // In header: <boost/date_time/date_duration_types.hpp>

    template<typename base_config>
    class years_duration {
    public:
      // construct/copy/destruct
      years_duration(int_rep);
      years_duration(special_values);

      // public member functions
      int_rep number_of_years() const;
      duration_type get_neg_offset(const date_type &) const;
      duration_type get_offset(const date_type &) const;
      bool operator==(const years_type &) const;
      bool operator!=(const years_type &) const;
      years_type operator+(const years_type &) const;
      years_type & operator+=(const years_type &);
      years_type operator-(const years_type &) const;
      years_type & operator-=(const years_type &);
      years_type operator*(const int_type) const;
      years_type & operator*=(const int_type);
      years_type operator/(const int_type) const;
      years_type & operator/=(const int_type);
      months_type operator+(const months_type &) const;
      months_type operator-(const months_type &) const;
    };

## Description

A logical year enables things like: "date(2002,Mar,2) + years(2) -> 2004-Mar-2". If the date is a last day-of-the-month, the result will also be a last-day-of-the-month (ie date(2001-Feb-28) + years(3) -> 2004-Feb-29).

### `years_duration` public construct/copy/destruct

1.     years_duration(int_rep num);

2.     years_duration(special_values sv);

### `years_duration` public member functions

1.     int_rep number_of_years() const;

2.     duration_type get_neg_offset(const date_type & d) const;

   returns a negative duration

3.     duration_type get_offset(const date_type & d) const;

4.     bool operator==(const years_type & rhs) const;

5.     bool operator!=(const years_type & rhs) const;

6.     years_type operator+(const years_type & rhs) const;

7.     years_type & operator+=(const years_type & rhs);

8.     years_type operator-(const years_type & rhs) const;

9.     years_type & operator-=(const years_type & rhs);

10.     years_type operator*(const int_type rhs) const;

11.     years_type & operator*=(const int_type rhs);

12.     years_type operator/(const int_type rhs) const;

13.     years_type & operator/=(const int_type rhs);

14.     months_type operator+(const months_type & m) const;

15.     months_type operator-(const months_type & m) const;