Я использую библиотеку property_tree для ботинок. Я ищу способ получить дочерний узел из объекта ptree
, но вернуть пустой ptree
в случае неудачи. Я наткнулся на хороший пример в property_tree/examples/empty_ptree_trick.cpp:
void process_settings(const std::string &filename)
{
ptree pt;
read_info(filename, pt);
const ptree &settings = pt.get_child("settings", empty_ptree<ptree>());
std::cout << "\n Processing " << filename << std::endl;
std::cout << " Setting 1 is " << settings.get("setting1", 0) << std::endl;
std::cout << " Setting 2 is " << settings.get("setting2", 0.0) << std::endl;
std::cout << " Setting 3 is " << settings.get("setting3", "default") << std::endl;
}
который делает именно то, что мне нужно. Проблема в том, что компилятор жалуется, что функция empty_ptree()
не является членом boost:property_tree
. Есть идеи, где empty_ptree()
?
Я использую Boost 1.44 на VS2010.