Naughter Software Logo

DTime+ v3.21 A collection of Date/Time Classes for C++


DTime+ is a collection of classes & functions designed to ease the C++ programmers’ burden when handling date and time values. If like me, having taken a look at the built in MFC classes CTime and CTimeSpan or the OLE based COleDateTime and COleDateTimeSpan classes in Visual Studio, you decided they did not meet your requirements, and you decided to write your own super-duper date and time classes, but deadlines were looming, then look no further. The original basis of the algorithms for conversion from the Julian and Gregorian calendar to the underlying storage was adopted from an article by Peter J.G. Meyer for the March 1993 issue of Dr Dobbs Journal. You can find the article online at As of v3.21, the code for the Julian and Gregorian calendar has been reworked to now be based on Howard Hinnant's algorithms at The algorithm used to determine the date of Easter Sunday is taken from the book ‘Astronomical Algorithms’ by Jean Meeus. The algorithms for the Moslem (Islamic) and Hebrew calendar are provided by the book "Calendrical Calculations, The Millenium Edition" by Edward M. Reingold and Nachum Dershowitz. Calendrical Calculations has always been a favourite topic of the author and was in fact some of the first code which I published on the web back in the mid 90's. Originally the code was shareware but I've now decided to make it freeware in the hope that more people will find it useful in their day to day projects. As of v3.20, the classes are fully supported on non Windows platforms. All the code has been carefully reviewed and reworked to support this. For this release the code has been tested on VC 2010, 2012, 2013 & 2015 on Windows and on Ubuntu 16.04 LTS / 16.10 using gcc 6.2.0, cmake 3.5.2 and Code::Blocks 16.01.




The enclosed zip file contains the source code, a simple VC 2010 console based application which exercises all the class and a VC 2010 CDialog based application to exercise the UI support provided by the class framework.





v1.0 v1.1 v1.11 v2.0 v2.1


v2.21 (17 July 1998)

v2.22 (14 May 1999) 11 April 2000

v3.0 (22 April 2006)

v3.01 (1 May 2006)

v3.02 (20 May 2006)

v3.03 (22 May 2006)

v3.04 (25 May 2006)

v3.05 (27 May 2006)

v3.06 (29 May 2006)

v3.07 (30 May 2006)

v3.08 (2 July 2006)

v3.09 (13 April 2007)

v3.10 (26 October 2014)

v3.20 (6 December 2016)

v3.21 (20 December 2016)