The C++ Boost library now has date-time library. The Boost library is supposed to be very good, but I think it suffers from seriously warped C++ thinking. The date functions have 60 include files. Some of the functions throw exceptions that the caller must handle. And with all the complicated functions, it doesn't do the basic necessities very well.