使用boost :: program

在我的程序中,我有一系列对 - 名称和大小。

我想使用boost::program_options从命令行界面构建这个列表。

它应该看起来像这样:

myProg - 价值(“John”,10) - 价值(“Steve”,14) - 价值(“Marge”,28)

我也需要这样做 - 史蒂夫将在约翰之后和玛格之前上榜。 这可能与boost::program_options

这种CLI语法只是获取列表的一个想法。 如果你有更好的,请告诉。


你只需定义你的选择

("value", value<vector<YourPairType>>()->composing(), "description")

和一个合适的

istream& operator >> (istream& in, YourPairType& pr) { /* ... */ }

它会以您的("John",10)格式从in读入一个YourPairType 。 解析后的选项将按照它们在命令行中出现的顺序进行存储。

如果您使用自定义验证器而不是operator >>则可以获得更大的灵活性。


每行具有一对值的文件可以是一个选项。 该文件可能是一个简单的ascii文本文件,或者您也可以使用xml文件 - 请参阅boost序列化。

链接地址: http://www.djcxy.com/p/49555.html

上一篇: Using boost::program

下一篇: Cython: call function from external C file