TCLAP中的矢量参数

时间:2013-05-29 09:10:46

标签: c++ string command-line vector

是否可以使用TCLAP传递一系列值?我的目标是避免

prog --opt 1 --opt 2 --opt 3 

并且

prog --opt 1 2 3

代替。

2 个答案:

答案 0 :(得分:1)

当问到OP时可能不是这种情况,但现在有UnlabeledMultiArg达到了这个目的:

//
// UnlabeledMultiArg must be the LAST argument added!
//
TCLAP::UnlabeledMultiArg<std::string> multi("f", "file_names", false, "vector of file names", cmd);
cmd.parse(argc, argv);

std::vector<std::string> fileNames = multi.getValue();

可在此处找到完整文档:TCLAP Manual

答案 1 :(得分:0)

我不这么认为,因为在这种情况下,不可能辨别出与--opt相对应的参数,以及与未标记的参数相对应的参数。

但我可能错了,最好是编写一些代码来做自己的测试,看看会发生什么。我没有在文档中看到有关该案例的任何内容