是否可以允许使用 TCLAP 传递一系列值?我的目标是避免
prog --opt 1 --opt 2 --opt 3
并且有
prog --opt 1 2 3
反而。
是否可以允许使用 TCLAP 传递一系列值?我的目标是避免
prog --opt 1 --opt 2 --opt 3
并且有
prog --opt 1 2 3
反而。
当询问 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 手册
我不这么认为,因为在这种情况下,将无法辨别对应于 的参数--opt
以及对应于未标记参数的参数。
但我可能错了,最好是写一些代码自己做测试看看会发生什么。我在文档中没有看到关于那个案例的任何内容