## 26.7 Case Study: Putting Patterns to Work (cont.)

- The i/f:

  >     class InvoicePrinter
  >     {
  >     public:
  >        virtual void print_header(string s) = 0;
  >        virtual void print_string(string value, bool pad_right) = 0;
  >        virtual void print_number(double value, int precision) = 0;
  >        virtual void print_footer(string s, double total) = 0;
  >     };

prev |top |next