Volodya, thanks for the help thus far, I think I am close to getting it to
work. According to the post you referred me to, multiple of the same
parameter are not collapsed, ie
--list a.txt b.txt --list c.txt d.txt
Should give me access to the two separate lists.
I tried declaring the parameter as usual:
("list", po::value
David Doria wrote:
I want to do something like this: --NumLists 2 --List0 a.txt b.txt --List1 c.txt d.txt
vector
Lists(2); po::options_description desc("Allowed options"); desc.add_options() ("help", "produce help message") ("List0", po::value
multitoken(), "List0.") ("List1", po::value multitoken(), "List1.") ; But if I wanted to handle --NumLists 10, I would have to manually add List0, List1, ... List10 as parameters. That seems a bit silly, but maybe this is a very odd usage?
Well, it's somewhat odd :-)
Please let me know if you can think of a better way to handle this.
Well, as a remark, your command line interface will make users cry:
- Do you really want users to type uppercase letters? (Use can use case-insensitive mode, of course, and allow any spelling, but upper case in your example seems strange. - Do you really want users to count lists and pass 0, 1, 2, etc explicitly? - Why do you need explicit specification of the number of lists?
I'd use:
--list a.txt b.txt --list c.txt d.txt
You might find the recent thread useful for handling such command lines:
http://permalink.gmane.org/gmane.comp.lib.boost.user/46405
- Volodya