#include #include #include using namespace std; struct ltstr { bool operator()(const char* s1, const char *s2) const { return strcmp(s1, s2) < 0; } }; int main(void) { // map days_in_month; typedef map > StrIntMap; StrIntMap days_in_month; days_in_month["jan"] = 31; days_in_month["feb"] = 28; days_in_month["mar"] = 31; cout << "jan: " << days_in_month["jan"] << endl << endl; StrIntMap::iterator cur, prev, next; cur = days_in_month.find("jan"); prev = next = cur; ++next; --prev; cout << "Previous is " << (*prev).first << endl; cout << "Next is " << (*next).first << endl << endl; cout << "There are " << days_in_month.size() << " elements" << endl; for (cur=days_in_month.begin(); cur!=days_in_month.end(); ++cur) cout << cur->first << ": " << cur->second << endl; return 0; }