问题标签 [boost-program-options]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
8804 浏览

c++ - boost program_options 多值问题

因此,我正在研究 Boost program_options 库的示例之一,并且我想尝试为多个值/向量值之一设置默认值,但它似乎不起作用。正如我认为建议在这里工作

我修改的内容大约在第 40 行:

当我编译这个小改动时,我希望当没有传递 -I 选项时,“SOMETHING”被添加到包含路径参数列表中。

有谁知道为什么不是这样?

这是完整的源代码:

0 投票
1 回答
221 浏览

boost - 在 boost program_options 中允许选项的有限数量的可能性

我可以以某种方式告诉 boost program_options 特定选项的值数量有限吗?例如,选项“--verbosity”可能只有调试,高或低?!?

谢谢!弥敦道

0 投票
1 回答
2557 浏览

boost - boost::program_options :当我自己的选项类型属于命名空间时,如何声明和验证它?

使用 boost::program_options,当在命名空间内声明时,我无法编译自己的选项类型。然而,在命名空间之外,它可以编译并正常工作:

在 main() 中,选项“m1”的声明编译但“m2”没有...缺少什么?我将 boost_1_43_0 与 gcc 版本 4.4.4 一起使用。

0 投票
1 回答
4810 浏览

c++ - boost program_options 的“多次出现”异常

我正在 boost 的 program_options(1.42 版)上编写以下代码。这看起来很简单,并且与教程中的内容差不多。但是,我收到“multiple_occurrences”错误。进一步调查发现它(可能)是引发它的“文件名”参数。

我给出的参数是:

我对此一无所知..任何帮助将不胜感激。

0 投票
1 回答
18731 浏览

c++ - 链接时找不到 C++ 库,编译 `boost::program_options` 示例时出错

我正在尝试编译multiple_sources.cpp以在我的计算机上编译。我正在运行完全更新的 Xubuntu Lucid Lynx。

它将毫无问题地编译,g++ -c multiple_sources.cpp但是当我尝试链接并制作可执行文件时,g++ multiple_sources.o我得到:

等等令人作呕

我确实安装了库:

阅读 g++ 手册页后,我也尝试过:

  • g++ -llibboost_program_options multiple_sources.cpp
  • g++ -llibboost_program_options.a multiple_sources.cpp
  • g++ -llibboost_program_options.so multiple_sources.cpp
  • 以及上述所有内容-L/usr/lib 之前-l

它们都因以下变化而失败:

我究竟做错了什么?

0 投票
2 回答
1421 浏览

c++ - boost program_options 接受最后一个标志之后的所有值

有没有办法用 boost::program_options 收集指定参数后的所有值?不过,我需要注意两个注意事项,我需要接受无法识别的参数,并且我需要接受可能包含破折号的值。我尝试过使用 command_line_parser vs parse_command_line ,我可以得到无法识别的值或包含破折号的值,但不能同时得到。

示例:./myprog Ignore1 Ignore2 --Accept 1 --AlsoAccept 2 --AcceptAll 1 2 -3 4

我并不真正关心验证 --AcceptAll 是通过的最后一个标志;我只是在寻找为该标志之后的所有内容返回字符串向量的逻辑。

0 投票
1 回答
415 浏览

c++ - 在模块化程序中使用 Boost.Program_options

我使用的代码由一组模块组成,编译成单独的库。反过来,库以不同的组合链接以构建不同的二进制文件。

所以,这是相当有序的。

不同的模块使用不同的命令行参数,我想使用 Boost.Program_options 进行解析。

由于命令行参数集取决于链接在一起的库,我事先不知道所有参数,因此无法将它们添加到 program_options::options_description。

您如何启用每个模块以添加它的命令行参数并稍后阅读它们?

谢谢

0 投票
1 回答
8034 浏览

c++ - 仅在 boost::program_options 中的短选项

如果没有多头期权的提振,人们将如何指定空头期权?

生成这个

有什么方法可以只指定短选项吗?

0 投票
1 回答
6668 浏览

c++ - 解析位置参数

考虑以下从 boost 程序选项示例中采用的简单程序

以下行为符合预期:

但是,在引入位置参数时我很惊讶,它没有被标记为错误

为什么boost::program_options::too_many_positional_options_error不抛出异常?

0 投票
2 回答
6298 浏览

c++ - boost::program_options - 解析多个命令行参数,其中一些是字符串,包括空格和字符

我想使用 boost::program_options 解析多个命令行参数。但是,有些参数是用双引号括起来的字符串。这就是我所拥有的——

当我这样做时,这很好用

但是当我这样做时不起作用

从 Windows 命令行。对于第二个选项,它被转换为["this" "is" "arg1" "this" "is" "arg2"]createOptions 向量。因此,val1gets"this"val2gets 分别"is"代替了"this is arg1"and "this is arg2"

如何使用 boost::program_option 来完成这项工作?