boost程序选项的parse_config_file如何解析多重语句

时间:2015-01-25 20:50:18

标签: c++ parsing syntax boost-program-options config-files

我喜欢使用带有多重语音和配置文件文件的boost程序选项来读取矢量。 使用:

std::vector<int> numbers
po::options_description desc ( "Allowed Arguments" );
desc.add_options()
( "numbers,n", po::value< std::vector< int > > ( &numbers)->multitoken(), "my numbers" );

std::ifstream ifs ( "config.ini" , std::ifstream::in );
po::store ( po::parse_config_file ( ifs , desc ), vm );
po::notify ( vm );

但是现在我必须在config.ini中定义单独行中的每个值。像

numbers = 0
numbers = 1
numbers = 3
numbers = 5

是否有一种方法/语法来定义一行中的所有数字,例如:     数字= [0 1 3 5]#这不起作用

由于 马库斯

1 个答案:

答案 0 :(得分:0)

根据the documentation,一行配置一个值。

但是,您可以将数字的值作为字符串读取,然后使用正则表达式或类似方法进行解析以获取单个值。