shared_ptr的初始化
shared_ptr<int> a(new int(6));
shared_ptr的操作
shared_ptr<A> a = A::create();
a.get(); 得到 A*
a.reset(); 不再引用A*
shared_ptr<A> aa = A::create();
bool aaa = a < aa;
b = a;
b.expired(); ==>引用的对象是否已经无效了
b.lock(); ==> 得到shared_ptr<A>
b.reset(); ==>不再引用A*
enable_shared_from_this<A>是一个模板类。它的方法 shared_from_this() 可以获得 shared_ptr<A>指针。必须先有其他活着的shared_ptr<A>实例才能调用shared_from_this
shared_ptr<A>直接用在std::set等容器种时,默认使用的比较操作 < 比较的是指针值。如果需要比较引用的<,需要自定义比较子函数对象。