Укажите значение поля как std::vector<value_type>
в options_description
:
namespace po = boost::program_options;
po::options_description desc;
desc.add_options()
("list.names.name", po::value< std::vector<std::string> >(), "A collection of string values");
po::variables_map vm;
std::ifstream ini_file("config.ini");
po::store(po::parse_config_file(ini_file, desc), vm);
po::notify(variables);
if (vm.count("list.names.name"))
{
const std::vector<std::string>& values = vm["list.names.name"].as< std::vector<std::string> >();
std::copy(values.begin(), values.end(), std::ostream_iterator<std::string>(std::cout, "\n"));
}