yuanzhen@yuanzhen-ThinkPad-X121e:~/C_script$ cat ten.cpp
/*
* ten.cpp
* Copyright (C) 2016 yuanzhen <yuanzhen@yuanzhen-ThinkPad-X121e>
*
* Distributed under terms of the MIT license.
*/
#include <iostream>
#include <map>
#include <string>
#include <algorithm>
#include <cctype>
using std::cout;
using std::endl;
using std::make_pair;
int main()
{
typedef std::map<int,std::string> IntStringMMap;
//typedef std::multimap<int,std::string> IntStringMMap;
IntStringMMap coll;
coll.insert(make_pair(5,"tagged"));
coll.insert(make_pair(2,"a"));
coll.insert(make_pair(1,"this"));
coll.insert(make_pair(4,"of"));
coll.insert(make_pair(6,"strings"));
coll.insert(make_pair(1,"is"));
coll.insert(make_pair(3,"multimap"));
IntStringMMap::const_iterator pos;
for(pos=coll.begin(); pos!=coll.end(); ++pos)
{
cout << (*pos).first << "\t" <<pos->second << "\t";
}
cout << endl;
IntStringMMap::iterator itor;
for(itor=coll.begin(); itor!=coll.end();++itor)
{
cout << itor->first << "\t" << itor->second << "\t";
int key=itor->first;
std::string value=itor->second;
//*itor=make_pair(itor->first * 10,"A");
std::transform(value.begin(),value.end(),value.begin(),toupper);
coll[key]=value;
cout << itor->first << "\t" << itor->second << endl;
}
}