/////////////

#include "stdio.h"
#include <iostream>
#include <map>
using namespace std;
typedef std::pair<int,int> ind;


int main(void)
{
  int i;
  std::map<ind,char> mymap;
  std::map<ind,char> secondmap;
  std::map<ind,char>::iterator itListA;

 mymap.insert(std::make_pair(std::make_pair(1,3),'c'));
 mymap.insert(std::make_pair(std::make_pair(1,1),'r'));
 mymap.insert(std::make_pair(std::make_pair(4,2),'e'));
 mymap.insert(std::make_pair(std::make_pair(1,0),'i'));
 mymap.insert(std::make_pair(std::make_pair(4,0),'t'));
 mymap.insert(std::make_pair(std::make_pair(5,1),'r'));
 mymap.insert(std::make_pair(std::make_pair(1,0),'e'));
printf("*** first *****\n");
 for(itListA=mymap.begin();itListA!=mymap.end();itListA++)
 {
cout<<"la valeur de la clef ("<<itListA->first.first<<","<<itListA->first.second<<")"<<endl;
cout<<"est "<<itListA->second<<endl;
 }
 secondmap=mymap;
 printf("*** first *****\n");
 mymap=map<ind,char>();
 for(itListA=mymap.begin();itListA!=mymap.end();itListA++)
 {
cout<<"la valeur de la clef ("<<itListA->first.first<<","<<itListA->first.second<<")"<<endl;
cout<<"est "<<itListA->second<<endl;
 }
 printf("*** second *****\n");
 for(itListA=secondmap.begin();itListA!=secondmap.end();itListA++)
 {
cout<<"la valeur de la clef ("<<itListA->first.first<<","<<itListA->first.second<<")"<<endl;
cout<<"est "<<itListA->second<<endl;
 }
 getchar();
  return 0;
}

//////
