An abstract data type named Date
This abstract data type named Date (Listing 2) has month, day, and year data members.
An overloaded operator function suggests that it supports the addition of an integer number of days to the date encapsulated in an object of the class.
The class could be expanded to support:
Could also be expanded to support behavior peculiar to the necessary date operations in the application for which it will be used.