Cann Boost Program_options separate comma separated argument values
        Posted  
        
            by lrm
        on Stack Overflow
        
        See other posts from Stack Overflow
        
            or by lrm
        
        
        
        Published on 2010-06-17T19:50:35Z
        Indexed on 
            2010/06/17
            19:53 UTC
        
        
        Read the original article
        Hit count: 343
        
If my command line is:
> prog --mylist=a,b,c
Can Boost's program_options be setup to see three distinct argument values for the mylist argument? I have configured program_options as:
namespace po = boost::program_options;
po::options_description opts("blah")
opts.add_options()
    ("mylist", std::vector<std::string>>()->multitoken, "description");
po::variables_map vm;
po::store(po::parse_command_line(argc, argv, opts), vm);
po::notify(vm);
When I check the value of the mylist argument, I see one value as a,b,c. I'd like to see three distinct values, split on comma. This works fine if I specify the command line as:
> prog --mylist=a b c
or
> prog --mylist=a --mylist=b --mylist=c
Is there a way to configure program_options so that it sees a,b,c as three values that should each be inserted into the vector, rather than one?
I am using boost 1.41, g++ 4.5.0 20100520, and have enabled c++0x experimental extensions.
© Stack Overflow or respective owner