unique_ptr是一個智能指針類,用于管理動態(tài)分配的對象的所有權(quán)。與傳統(tǒng)的裸指針不同,unique_ptr負責(zé)自動釋放其所管理的對象,從而避免內(nèi)存泄漏。
unique_ptr的用法如下:
std::unique_ptr<int> ptr = std::make_unique<int>(10);
std::cout << *ptr << std::endl;
std::unique_ptr<int> ptr2 = std::move(ptr);
ptr2.reset();
std::unique_ptr<int, std::function<void(int*)>> ptr3(new int(20), [](int* p){ std::cout << "Deleting: " << *p << std::endl; delete p; });