boost::p roperty 树的任何标准库实现

Any standard library implementation for boost::property tree

提问人:Mayank Jha 提问时间:1/24/2020 最后编辑:Mayank Jha 更新时间:2/16/2022 访问量:2252

问:

除了“boost/property_tree”之外,还有其他选择吗?

实际上,我正在尝试删除C++的所有boost实现并使用标准库函数。 我已经能够找到其他一些提升 C++ 实现的替代方案,但对于属性树来说却没有。

不使用 boost 的动机:主要是处理增加的依赖关系

bool Processor::init(std::istream& xml, std::istream& rioxml, const std::string& logconfig, const std::string& recoveryConfig) {
    boost::property_tree::ptree config;
    boost::property_tree::ptree rioconfig;
    try {
        boost::property_tree::xml_parser::read_xml(xml, config,
                boost::property_tree::xml_parser::no_comments);

        boost::property_tree::xml_parser::read_xml(rioxml, rioconfig,
                boost::property_tree::xml_parser::no_comments);

        return Initialize(config, rioconfig, logconfig, recoveryConfig);
    }
    catch(const boost::property_tree::xml_parser::xml_parser_error& ex){
        LOG_ERROR(LOGCAT_DEFAULT, MSGID_UNKNOWN, "Failed to parse business config: " << logconfig);
        return false;
    }
}
C++ 11 提升 C++-标准库 boost-propertytree

评论

0赞 darune 1/24/2020
你为什么不想要提升?
0赞 Mayank Jha 1/24/2020
我认为动机主要围绕着这一点:stackoverflow.com/a/33453112/7054831
4赞 darune 1/24/2020
boost 是对 STD 的补充 - 不是替代品或其他实施 - 并回答您的问题:不 - 而且可能在不久的将来也不会
1赞 Marshall Clow 1/24/2020
您可以随时编写自己的替换项。
0赞 AndyG 2/2/2020
您只是在 std 库中寻找某些内容,还是其他第三方库没有提升?

答:

0赞 Nickeron-dev 2/16/2022 #1

我认为没有任何类似的选择。

您可以编写自己的实现。