      1  #include <sstream>
      2  #include "mailbox.h"
      3  #include "mailsystem.h"
      4
      5  using namespace std;
      6
      7  MailSystem::MailSystem(int mailbox_count)
      8  {
      9     for (int i = 0; i < mailbox_count; i++)
     10     {
     11        ostringstream passcode;
     12        passcode << i;
     13        ostringstream greeting;
     14        greeting << "You have reached mailbox " << i
     15           << ". \nPlease leave a message now.";
     16        mailboxes.push_back(new Mailbox(passcode.str(), greeting.str()));
     17     }
     18  }
     19
     20  int string_to_int(string s)
     21  {
     22     istringstream instr(s);
     23     int n;
     24     instr >> n;
     25     return n;
     26  }
     27
     28  Mailbox* MailSystem::find_mailbox(string ext) const
     29  {
     30     int i = string_to_int(ext);
     31     if (1 <= i && i <= mailboxes.size())
     32        return mailboxes[i];
     33     return NULL;
     34  }