#include <iostream>
#include <condition_variable>
#include <atomic>
#include <thread>
#include <future>
#include <vector>
using namespace std;
class A {
public:
A(int _x): x(_x) {
}
A () {
x = 0;
}
int x;
};
int main()
{
unique_ptr<A> p (new A);
cout<<p->x<<endl;
unique_ptr<A> p2 (new A(500));
cout<<p2->x<<endl;
// 从一个已初始化的类,
A a(12);
unique_ptr<A> p3 (&a);
cout<<p3->x<<endl;
/*
x unique_ptr<A> p4; x
x p4 = new A(333) x
*/
}
void f1(unique_ptr<int> p);
unique_ptr<int> p = make_unique<int>(1);
// 这里必须move,某种compile error
f1(move(p));