我有一些非常详细的选项,例如-length
-strength
,我想允许猜测它们,以便用户可以剪切它们的名字。
另一方面,一些选项的短名称彼此包括-K1
-K10
,对于那些当然猜测应该被禁用。
我也有一个位置选项,我想对选项保持所有标准检查:例如我不想允许未知(错误输入)选项。
我想知道是否存在使用Boost :: program_options ...
实现此目的的方法答案 0 :(得分:1)
就I read the docs而言,allow_guessing
可以满足您的需求。
事实上,它根本不允许猜测:
allow_guessing
允许长选项的缩写拼写, 如果他们明确地识别长选项 。如果猜测生效,则没有长选项名称应该是其他长选项名称的前缀。
当然后者听起来像是一个惊人的限制,但事实并非如此。它只是告诉您,如果您有--Kool
以及--KoolAid
,则猜测会使整个--Kool
模糊不清(因为它可能缩写为--KoolAid
) 。
--KoolA
不会含糊不清。 -K
(请注意单个破折号)都不应该是因为它不是长格式选项,因此永远不会是缩写。