下面的代码不会写入文件。
#include <cereal/types/vector.hpp>
#include <cereal/archives/xml.hpp>
{
vector<int> v = { 1,2,3 };
stringstream s;
s << "cereal_test.xml";
cereal::XMLOutputArchive oarchive(s);
oarchive(v);
}它的编译和运行显然是正确的。
如果我们的cout << s << endl;超出了我们在控制台看到的范围:
cereal_test.xml
<?xml version="1.0" encoding="utf-8"?>
<cereal>
<value0 size="dynamic">
<value0>1</value0>
<value1>2</value1>
<value2>3</value2>
</value0>
</cereal>遗漏了什么?
发布于 2019-03-06 23:32:31
从谷类食品的教程中错误地复制粘贴:
应该是ofstream而不是stringstream
{
vector<int> v = { 1,2,3 };
std::ofstream outFile("cereal_test.xml");
{
cereal::XMLOutputArchive oarchive(outFile);
oarchive(v);
}
}https://stackoverflow.com/questions/55026089
复制相似问题