fork download
  1. #include <iostream>
  2. #include <unordered_map>
  3.  
  4. struct Test
  5. {
  6. std::unordered_map<int, int> v;
  7. std::unordered_map<int, int>::iterator vend;
  8.  
  9. Test(std::unordered_map<int, int>::iterator &it)
  10. : vend { v.end() }
  11. {
  12. it = this->vend;
  13. };
  14.  
  15. Test() = delete;
  16. Test(Test const &) = delete;
  17. Test(Test &&) = default; // <- line in question
  18. };
  19.  
  20. int main()
  21. {
  22. std::unordered_map<int, int>::iterator it;
  23. std::unordered_map<int, Test> m;
  24. m.emplace(0, Test{ it });
  25. std::cout << std::boolalpha << (m.at(0).v.end() == it) << "\n";
  26.  
  27. return 0;
  28. }
Success #stdin #stdout 0s 15240KB
stdin
Standard input is empty
stdout
true