fork download
  1. #include <map>
  2. #include <utility>
  3. #include <iostream>
  4.  
  5.  
  6. int main () {
  7. std::map<long , int* > v;
  8.  
  9. int i,a[10];
  10. for(i=0; i<10; i++)
  11. {
  12. a[i] = i+1;
  13. v.insert(std::pair<long, int *>(i+1,&a[i]));
  14. }
  15.  
  16. std::map<long, int*>::iterator itr = v.begin();
  17. while(itr != v.end())
  18. {
  19. std::cout << itr->first << " "<<itr->second;
  20. std::cout << "\n";
  21. itr++;
  22. }
  23. std::map<long, int*, std::greater<long> > rv(v.begin(), v.end());
  24.  
  25. std::cout << "copied array: "<<"\n";
  26. std::map<long, int*, std::greater<long> >::iterator itr2 = rv.begin();
  27. while(itr2 != rv.end())
  28. {
  29. std::cout << itr2->first << " "<<itr2->second;
  30. std::cout << "\n";
  31. itr2++;
  32. }
  33. }
Success #stdin #stdout 0.01s 2860KB
stdin
Standard input is empty
stdout
1 0xbfb58e28
2 0xbfb58e2c
3 0xbfb58e30
4 0xbfb58e34
5 0xbfb58e38
6 0xbfb58e3c
7 0xbfb58e40
8 0xbfb58e44
9 0xbfb58e48
10 0xbfb58e4c
copied array: 
10 0xbfb58e4c
9 0xbfb58e48
8 0xbfb58e44
7 0xbfb58e40
6 0xbfb58e3c
5 0xbfb58e38
4 0xbfb58e34
3 0xbfb58e30
2 0xbfb58e2c
1 0xbfb58e28