Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在挖掘 boost 的文档,寻找在 boost::shared_ptr 中的对象被删除之前调用的回调,因此我可以将对象状态写回硬盘驱动器,并从 std::map 中删除 weak_ptr 元素。
有谁知道如何处理这个问题?
当共享指针被删除时,它应该调用你的对象析构函数。您可以在那时将对象写入磁盘,就在其析构函数中。
您可以将删除器函数传递给共享 ptr 并在此函数中写入对象状态。
template<class Y, class D> shared_ptr(Y * p, D d);