正如标题所暗示的那样,我试图找到一个库(标题只会很好),这样可以很容易地实现这些漂亮的小命令行界面,您可以在具有以下形式的Web应用程序中看到这些界面:
$ application --general-flag=asdf action --action-specific-flag=asdf positional --more-flags
例如:
$ hugo new site --force --format=toml mysite
或
$ hugo --buildDrafts
对于Go,有一些(在我看来)非常好的库,例如cobra或主销(github.com/alecthomas/kingpin)。 但是,我无法在c ++中找到我喜欢的类似库。 大多数解决方案似乎使用起来相当复杂,冗长或者仍然需要大量的手工工作。
一般来说,看起来他们似乎正在接近这个问题 在如何解析参数和选项而不是如何构建命令 线界面。
模板化的有时依赖于启用RTTI,必须在我的应用程序中禁用它。 我看过的是:tclap,optionparser(optionparser.sourceforge.net/),cmdline(github.com/tanakh/cmdline),args.hxx(github.com/Taywee/args).
Args.hxx看起来最有希望,但依赖于RTTI。 你知道我可能忽略的任何图书馆吗?也很抱歉这些链接,我不允许超过2,但仍然想提供一些我已经尝试过的信息。