QCommandLineOption:计算重复参数?

QCommandLineOption: count repeated argument?

我想使用 -v 标志来表示冗长,如果重复更多次,相应地增加冗长,类似于例如openssh 客户端。 QCommandLineParser & QCommandLineOption 这可能吗?我查看了 API 文档和 google 周围但没有找到任何提示。谢谢!

当然可以。例如 optionNames() 将 return 在 CLI 上找到的选项的所有实例。 values().

也会如此

int main(int argc, char *argv[])
{
  QCoreApplication a(argc, argv);
  QCommandLineParser clp;
  clp.addOptions({ {QStringLiteral("v"), QStringLiteral("Verbose leval.")} });
  clp.process(a);
  qDebug() << clp.optionNames().count("v") << clp.optionNames();
  return 0;
}
$  ./app -v -v -v
-> 3 ("v", "v", "v")