【发布时间】:2015-06-19 14:14:28
【问题描述】:
我正在序列化对象的原始指针并将其发送到另一个应用程序。
反序列化时,我得到了另一个原始指针。这意味着 Boost::Serialization 在内部构造这个指针后面的对象。我现在很好奇谁拥有该对象的所有权,如果不再需要 Boost 是否会删除该对象。
一些可能更好地说明问题所在的代码:
void anyMethod()
{
std::ifstream file("archiv.txt");
boost::archive::text_iarchive ia(file);
AnyClass* object;
ia >> object;
//work with object
}
//Now what has happened to object?
//Is it deleted, cause it went out of scope?
//Do I have to delete it myself?
【问题讨论】:
-
你可能需要清理自己。一般来说,C++ 是一个非常多的,如果你想花时间做某事,明确地说你想花那个时间。
标签: c++ pointers boost-serialization