Hi,
The documentation for Boost.Date_Time iterators says that "Date iterators are a model of Bidirectional Iterator".
However, I am not able to use them in some STL algorithms because of the lack of a required nested type.
The following simplified example does not compile:
#include <boost/date_time/gregorian/gregorian.hpp>
#include <algorithm>
void main()
{
using namespace boost::gregorian;
date v[5];
std::copy_n( month_iterator( date(2015,06,25) ), 5, v );
}
On VS2013 fails with error
'difference_type' : is not a member of 'boost::date_time::date_itr<boost::date_time::month_functor<boost::gregorian::greg_durations_config::date_type>,boost::gregorian::date>'
Compilation on gcc and clang fails with a similar error complaining about the lack of 'difference_type'.
Isn't a nested difference_type a requirement of BidirectionalIterator?
Am I using these date iterators incorrectly?
Regards