Qt在启动的时候接受命令行参数代码如下:

#include "mainwindow.h"
#include <QApplication>
#include <QDebug>
#include <QCommandLineParser>
int main(int argc, char *argv[])  
{
QApplication a(argc, argv);  
a.setApplicationVersion("0.1");  
a.setApplicationName("LexinSmart SerialMonitor tools");

//这里注意⚠️ 长名称和短名称,字符串里面只包含了一个字符就是短名称

//重载

QCommandLineOption op1("a");// 短名称,无参数  
QCommandLineOption op2("BBB");// 长名称,无参数  
QCommandLineOption op3(QStringList() << "c" << "CCC");// 多个名称,无参数  
QCommandLineOption op4("D", "", "Name");// 短名称,有参数,无默认值  
QCommandLineOption op5("Age", "", "", "18");// 长名称,有参数,有默认值  
QCommandLineOption op6("m", "", "."); // 短名称,有参数,无默认值

QCommandLineParser parser;  
parser.addHelpOption();  
parser.addVersionOption();  
parser.addOption(op1);  
parser.addOption(op2);  
parser.addOption(op3);  
parser.addOption(op4);  
parser.addOption(op5);  
parser.addOption(op6);  
parser.process(a);

qDebug() << parser.isSet(op1); // 有没有传入此参数  
qDebug() << parser.value(op4); // "Jack"  
qDebug() << parser.value(op5); // "18"  
qDebug() << parser.values(op6);// ("Hello", "World")

qDebug() << parser.helpText();

MainWindow w;  
w.show();

return a.exec();  
}

啦啦啦啦,这下可以接受参数正常启动了!