Memento

  1. Describe how much state must be maintained in a memento object.
  2. Describe the use of memento for undo features.
  3. Contrast a memento's wide and narrow interfaces.  Indicate how these might be implemented in Java and C++.