只有在具有value_semantic的情况下,才能将通知程序用于解析选项.给定通知程序自动处理无值选项的最佳方法是什么?
简单的方法是使用隐式赋值创建一个虚拟value_semantic,这样用户就可以传递没有值的选项.这导致明确提供值的可能性.如果提供了值,则可以添加运行时检查并抛出错误.
更新:但是,这在位置选项存在的情况下不起作用,因为位置选项的值可以遵循无值选项,将异常作为给定值给出它.
我需要实现一个可选的标志,比如-f/ --flag.由于这是一个标志,因此没有关联的值.在我的代码中,我只需要知道标志是否已设置.使用boost :: program_options执行此操作的正确方法是什么?