1  #ifndef ITEM_H
  2  #define ITEM_H
  3  
  4  #include <string>
  5  
  6  using namespace std;
  7  
  8  /**
  9     Describes an item in an invoice.
 10  */
 11  class Item
 12  {
 13  public:
 14     /**
 15        Gets the unit price of this item.
 16        @return the unit price
 17     */
 18     virtual double get_unit_price() const = 0;
 19     /**
 20        Gets the description of this item.
 21        @return the description
 22     */
 23     virtual string get_description() const = 0;
 24     /**
 25        Gets the quantity of this item.
 26        @return the quantity
 27     */
 28     virtual int get_quantity() const = 0;
 29     /**
 30        Gets the total price of this item.
 31        @return the total price
 32     */
 33     double get_total_price() const;
 34     virtual ~Item();
 35  };
 36  
 37  #endif