| 
 |  | 
We start by assembling the components that jump right out of the statement of requirements:
In addition, we will define the application-specific types Appointment and Calendar. Let's put together what we know so far:
       #include <Args.h>
       #include <Regex.h>
       #include <Time.h>
       #include <String.h>
       #include <iostream.h>
       struct Appointment {
           Time time;
           String desc;
       };
       class Calendar { ... };
       main(int argc, const char*const* argv) {
           Calendar cal;
           read_appts(cal);
           process_queries(cal, argc, argv);
       }
The main program simply reads the appointments into
the calendar, then processes each of the user's queries.