2014-09-05 59 views
1

我有一些选项非常详细,如-length-strength,我想允许猜测它们,以便用户可以剪切它们的名称。我可以用Boost :: program_options解析猜测和不可猜测的选项吗?

另一方面,一些选项的名称短,其中包括像-K1-K10和那些当然猜测应该被禁用。

我也有一个位置选项,我想保留所有选项的标准检查:例如我不想允许未知(打错)选项。

我想知道如果存在方式与升压:: program_options实现这个...

回答

1

至于I read the docsallow_guessing你想要做什么。

事实上,它不允许猜测,在所有:

allow_guessing

允许缩写拼写长期的选项,如果他们明确地识别长选项。如果猜测有效,没有长选项名称应该是其他长选项名称的前缀。

当然,后者听起来像是一个令人担忧的限制,但事实并非如此。它只是告诉你,如果你有--Kool以及--KoolAid然后猜测甚至会使完整的--Kool含糊不清(因为它可能打算缩写为--KoolAid)。

--KoolA不会含糊不清。 也不应该-K(注意单个短划线),因为它不是一个长形式的选项,因此永远不能是一个缩写。

+0

你是那么对!我误会了“如果猜测有效,没有长选项名称应该是其他长选项名称的前缀。”进入“如果你想使用猜测,你不能定义像”--K1“和” - K10“这样的选项,但这是不正确的。当前版本的Boost :: po按预期工作。 – DarioP 2014-09-05 14:26:27