fork(2) download
  1. #include<map>
  2. #include <iostream>
  3.  
  4. class Class1
  5. {
  6. public:
  7. Class1(int id) : id(id) {}
  8. int getId() const { return id; }
  9.  
  10. private:
  11. int id;
  12. };
  13.  
  14. int main() {
  15. auto comp = [](const Class1& lhs, const Class1& rhs){ return lhs.getId() < rhs.getId(); };
  16. std::map<Class1, int, decltype(comp)> c2int(comp);
  17.  
  18. Class1 c1(1), c2(0), c3(2);
  19. c2int[c1] = 12;
  20. c2int[c2] = 13;
  21. c2int[c3] = 14;
  22.  
  23. for (auto const &kv : c2int)
  24. std::cout << kv.first.getId() << ", " << kv.second << std::endl;
  25.  
  26. return 0;
  27. }
Success #stdin #stdout 0s 15240KB
stdin
Standard input is empty
stdout
0, 13
1, 12
2, 14