我编写了以下代码(用于测试):
boost::property_tree::ptree ptRes;
boost::property_tree::ptree ptRes2;
boost::property_tree::ptree ptRes3;
boost::property_tree::ptree ptA;
boost::property_tree::ptree ptB;
boost::property_tree::ptree ptQ;
boost::property_tree::ptree ptZ;
boost::property_tree::json_parser::read_json("../a.json", ptA);
boost::property_tree::json_parser::read_json("../b.json", ptB);
ptRes.put_child("ptA", ptA);
ptRes.put_child("ptB", ptB);
boost::property_tree::json_parser::write_json("res.json", ptRes);
boost::property_tree::json_parser::read_json("../a.json", ptQ);
ptRes2.put_child("ptA", ptQ);
boost::property_tree::json_parser::read_json("../b.json", ptQ);
ptRes2.put_child("ptB", ptQ);
boost::property_tree::json_parser::write_json("res2q.json", ptRes2);
boost::property_tree::json_parser::read_json("../a.json", ptZ);
ptRes3.put_child("ptA", ptZ);
ptZ.clear();
boost::property_tree::json_parser::read_json("../b.json", ptZ);
ptRes3.put_child("ptB", ptZ);
boost::property_tree::json_parser::write_json("res3z.json", ptRes3);
但在所有3个案例中输出相同。我的问题是我想要创建一个包含3个其他ptree
的{{1}}并且我不确定如何做得更好(在json阅读部分):
ptree
ptree
ptree
中的每个文件,但每次ptree
我在具有类型ptree
成员的类的构造函数中执行此操作,如果不需要,我不会创建另外3 ptree
。有什么建议吗?
答案 0 :(得分:1)
我认为更好的方法是使用本地ptree来填充类成员ptree。请注意,情况2和3实际上是相同的,因为as specified in the doc,ptree实例被清除。