最近我从C++ 11开始.我研究过weak_ptr.有两种获取原始指针的方法.
lock() 功能
shared_ptr<Foo> spFoo = wpPtr.lock();
if(spFoo) {
spFoo->DoSomething();
}
Run Code Online (Sandbox Code Playgroud)expired() 功能
if(!wpPtr.expired())
{
shared_ptr<Foo> spFoo = wpPtr.lock();
spFoo->DoSomething();
}
Run Code Online (Sandbox Code Playgroud)哪种方式更好?这两种方式有什么不同?