gpt4 book ai didi

c++:程序设置 - boost.PropertyTree 或 boost.program_options?

转载 作者:IT老高 更新时间:2023-10-28 23:15:18 26 4
gpt4 key购买 nike

我一直在寻找在 C++ 中存储程序设置或选项或配置的解决方案。这些可能是在 GUI 中公开的设置,需要在我的代码运行之间保存。

在我的搜索中,我遇到了 boost.PropertyTree这似乎是一个不错的选择。我知道 boost 是受人尊敬的代码,所以我很喜欢使用它,所以我开始使用它进行开发。然后我遇到了boost.program_options这似乎允许您做同样的事情,但看起来更适合程序设置的特定用例。

现在我想知道哪个最适合这份工作? (或者有没有比两者都好的第三种选择)

编辑:仅供引用,这是一个插件,因此它不会使用命令行选项(因为它甚至不可能)。

更新

我最终坚持使用 boost.PropertyTree。我需要能够将更改的选项保存回 INI,但我没有看到使用 boost.program_options 的方法。

最佳答案

使用 boost::program_options。这正是它的用途。在一个库中,您可以获得命令行选项、环境变量选项和类似 INI 的配置文件解析器。并且它们都以正确的方式集成在一起,因此当用户在多个这些来源中指定相同的选项时,库知道要考虑的正确优先级顺序。

另一方面,

boost::property_tree 是一个更通用的库。该库将文本流解析为统一的数据模型。但是需要进行真正的解析——即根据您的需要理解数据 block 。当看到特定选项字符串时,库不知道何时需要参数,或者不允许特定选项的特定值或值类型。

关于c++:程序设置 - boost.PropertyTree 或 boost.program_options?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5943721/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com