Мне нравится читать вектор, используя опции программы Boost с multitoken и из файла конфигурации.
с помощью:
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] # это не работает
Спасибо
Markus
В соответствии с документация, одна строка настраивает одно значение.
Однако вы можете прочитать значение для чисел в виде строки, а затем проанализировать с помощью регулярного выражения или аналогичного, чтобы получить отдельные значения.