shared_ptr 允许多个指针指向同一个对象;
shared_ptr < string > p1; // shared_ptr,可以指向string
shared_ptr < list<int> > p2; // shared_ptr, 可以指向int的list
注意智能指针是指针!指针所指向的对象有一个引用次数的属性,当引用次数为0时,该对象就会被析构。
class XnetNode
{
public:
int Init(void);
std::shared_ptr<xag_nav::os::StorageBase> mp_dcStorage;
}
int XnetNode::Init(void)
{
/* 初始化数据中心 */
while (nullptr == (mp_dcStorage = Application::Instance()->createStorage()))
{
XAG_LOG_E("failed to create storage");
std::this_thread::sleep_for(1s);
}
s32Ret = mp_dcStorage->setUserData(pType, const_cast<char *>(data.c_str()), data.size());
}