fork download
  1. #include <iostream>
  2. #include <memory>
  3.  
  4. class A{};
  5.  
  6. void dostuff1(A * a)
  7. {
  8. std::unique_ptr<A> ptr(a);
  9. }
  10.  
  11. void dostuff2(std::unique_ptr<A> a)
  12. {
  13. std::unique_ptr<A> ptr = std::move(a);
  14. }
  15.  
  16. int main()
  17. {
  18. dostuff1(new A());
  19. dostuff2(std::make_unique<A>());
  20.  
  21. std::unique_ptr<A> a;
  22. //dostuff2(a); //this will error out
  23.  
  24. return 0;
  25. }
Success #stdin #stdout 0s 16064KB
stdin
Standard input is empty
stdout
Standard output is empty