fork download
  1. #include <iostream>
  2. #include <ios>
  3. #include <string>
  4. #include <type_traits>
  5. #include <memory>
  6.  
  7. struct value
  8. {
  9. std::unique_ptr<std::string> s;
  10. };
  11.  
  12. int main()
  13. {
  14. std::cout << std::boolalpha;
  15. std::cout << std::is_move_constructible<value>::value << '\n';
  16. std::cout << std::is_move_assignable<value>::value << '\n';
  17.  
  18. using str_ptr = std::unique_ptr<std::string>;
  19. std::cout << std::is_move_constructible<str_ptr>::value << '\n';
  20. std::cout << std::is_move_assignable<str_ptr>::value << '\n';
  21.  
  22. return 0;
  23. }
  24.  
Success #stdin #stdout 0s 2896KB
stdin
Standard input is empty
stdout
true
true
true
true