Listing 2 Definition of class failure_handler

/* message handler: fail() is for fatal errors, */
/* error() is for serious errors, warn() is for */
/* warning messages to stderr, and post() is for */
/* ordinary messages to stdout. */

class failure_handler {
   public:
      failure_handler(void) {}
      virtual void fail(const char *fmt,va_list ap);
      virtual void error(const char *fmt,va_list ap);
      virtual void warn(const char *fmt,va_list ap);
      virtual void post(const char *fmt,va_list ap);
   private:
      /* unimplemented: */
      failure_handler(const failure_handler &other);
      failure_handler
          &operator =(const failure_handler &other);
};
// End of File