Sid*_*idd 10 c++ smart-pointers shared-ptr c++11
我正在尝试检查a std::shared_ptr
是否为空.这样做有什么区别
std::shared_ptr<int> p;
if (!p) { // method 1 }
if (p == nullptr) { // method 2 }
Run Code Online (Sandbox Code Playgroud)
πάν*_*ῥεῖ 12
这样做有什么区别
Run Code Online (Sandbox Code Playgroud)std::shared_ptr<int> p; if (!p) { // method 1 } if (p == nullptr) { // method 2 }
不,没有区别.这两个操作都有一个正确定义的重载.
另一个等价物
if(p.get() == nullptr)
Run Code Online (Sandbox Code Playgroud)