我可以用Boost::program_options将可猜测和不可猜测的选项解析在一起吗

Can I parse together guessable and non-guessable options with Boost::program_options?

本文关键字:选项 在一起 options Boost 我可以 program      更新时间:2023-10-16

我有一些非常详细的选项,比如-length -strength,我想允许猜测它们,这样用户就可以剪切它们的名称。

另一方面,一些选项的名称很短,相互包含,如-K1 -K10,对于那些选项,当然应该禁用猜测。

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

我想知道是否有一种方法可以通过Boost::program_options实现这一点。。。

就我阅读的文档而言,allow_guessing可以随心所欲。

事实上,它根本不允许猜测:

allow_guessing

允许长选项使用缩写拼写,如果它们明确标识长选项。如果猜测有效,则任何长选项名称都不应作为其他长选项名称的前缀。

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

CCD_ 11不会有歧义-K(注意单点划线)也不应该,因为它不是一个长格式选项,因此永远不可能是缩写。

相关文章: