Use map to store the value of the month name and its day number : pair « Map Multimap « C++






Use map to store the value of the month name and its day number

   
#include <map>
#include <iostream>
#include <string>

using namespace std;
class ltstr{
  public:
    bool operator()(const char* s1, const char* s2) const
     { return (strcmp(s1, s2) < 0);}
};

int main(void)
{
  map<const char*, int, ltstr> months;
  
  months["January"] = 31;
  months["February"] = 28;
  months["March"] = 31;
  months["April"] = 30;
  months["May"] = 31;
  months["June"] = 30;
  months["July"] = 31;
  months["August"] = 31;
  months["September"] = 30;
  months["October"] = 31;
  months["November"] = 30;
  months["December"] = 31;
  
  cout << "june -> " << months["June"] << endl;
  map<const char*, int, ltstr>::iterator cur  = months.find("June");
  map<const char*, int, ltstr>::iterator prev = cur;
  map<const char*, int, ltstr>::iterator next = cur;
  ++next;
  --prev;
  cout << "Previous (in alphabetical order) is " << (*prev).first << endl;
  cout << "Next (in alphabetical order) is " << (*next).first << endl;
}
  
    
    
  








Related examples in the same category

1.Inserting pairs of object into map
2.print the maximum number of pairs that DateMap can hold
3.Iterating over the elements of the map and using the current pair option and second elements.
4.Put pairs to map with insert
5.Map for string key and integer value
6.for each basic
7.Computing the Median 1
8.Sort a list of int and string pairs
9.Pass output message function to for_each function