Boost C++ 库

...世界上最受推崇和专业设计的 C++ 库项目之一。 Herb SutterAndrei Alexandrescu,《C++ 编码标准

PrevUpHomeNext

第 28 章。Boost.Program_options

Vladimir Prus

根据 Boost 软件许可协议 1.0 版发布。(请参阅随附文件 LICENSE_1_0.txt 或在 https://boost.ac.cn/LICENSE_1_0.txt 复制)

目录

简介
教程
入门
选项详情
多个来源
库概览
选项描述组件
解析器组件
存储组件
特定解析器
类型
符号注释列表
操作指南
非传统语法
响应文件
Winmain 命令行
选项组和隐藏选项
自定义验证器
Unicode 支持
允许未知选项
测试选项存在性
设计讨论
Unicode 支持
致谢
参考
头文件 <boost/program_options/cmdline.hpp>
头文件 <boost/program_options/config.hpp>
头文件 <boost/program_options/environment_iterator.hpp>
头文件 <boost/program_options/eof_iterator.hpp>
头文件 <boost/program_options/errors.hpp>
头文件 <boost/program_options/option.hpp>
头文件 <boost/program_options/options_description.hpp>
头文件 <boost/program_options/parsers.hpp>
头文件 <boost/program_options/positional_options.hpp>
头文件 <boost/program_options/value_semantic.hpp>
头文件 <boost/program_options/variables_map.hpp>
头文件 <boost/program_options/version.hpp>

简介

program_options 库允许程序开发者通过传统方法(例如命令行和配置文件)从用户那里获取程序选项,即(名称,值)对。

为什么要使用这样的库,以及它为什么比通过直接手写代码解析命令行更好呢?

  • 它更容易。声明选项的语法很简单,并且库本身也很小。诸如将选项值转换为所需类型并存储到程序变量中之类的事情会自动处理。

  • 错误报告更好。所有命令行问题都会被报告,而手写代码可能只是错误地解析输入。此外,可以自动生成用法消息,以避免与实际选项列表不同步。

  • 可以从任何地方读取选项。迟早命令行对于您的用户来说将不够用,并且您会想要配置文件,甚至可能是环境变量。添加这些内容不需要您付出大量的努力。

现在让我们在名为“教程”的章节中查看一些库用法的示例。


PrevUpHomeNext