新建项目

main.cpp

#include
<QCoreApplication>

#include
<QCommandLineParser>

#include
<QDebug>

#include
<stdio.h>

int
main(int
argc,
char**
argv)

{

QCoreApplication
app(argc,
argv);

app.setApplicationVersion("1.0.0.0");

app.setApplicationName("xxxx
tools");

/*
QCommandLineParser是提供了一系列命令行参数的类*/

QCommandLineParser
parser;

//添加help选项(在窗口上有-h,--help
and
?),这个选项是由

//QCommandLineParser自动自动处理的

parser.addHelpOption();

//添加
-v/--version选项,这个用来显示应用程序的版本信息

//这个同样是由QCommandLineParser自动处理,同样可以通过

//QCoreApplication::setApplicationVersion()来添加版本信息

parser.addVersionOption();

//通过QCommandLineOption类定义可能的命令行选项

QCommandLineOption
p(QStringList()
<<
"p"
<<
"package",
"set
package
name
of
Android",
"com.itcast.hello");

parser.addOption(p);

QCommandLineOption
l(QStringList()
<<
"l"
<<
"language",
"set
code
language
c++
or
lua",
"c++");

parser.addOption(l);

//通过app.arguments()返回一系列的命令行参数

//parser.parse(app.arguments());

parser.process(app);

//通过parser来解析一系列命令行参数

QString
strValue
=
parser.value("p");

//qCritical()
<<
"p
is"
<<
strValue;

//打印出解析出来的命令行参数

printf("p
is
%s\n",strValue.toUtf8().data());

//表示的是language

strValue
=
parser.value("l");

qDebug()
<<
parser.positionalArguments();

return
0;

//
return
app.exec();

}

运行项目:进入项目所在目录E:\QT\build-T26Command-Desktop_Qt_5_3_MinGW_32bit-Debug\debug
,输入T26Command.exe -l cpp -p cn.com.toto

弹出如下提示错误:

解决办法是进入:C:\Qt\Qt5.3.1\5.3\mingw482_32\bin拷贝上面需要的dll到E:\QT\build-T26Command-Desktop_Qt_5_3_MinGW_32bit-Debug\debug目录中!

再次运行,依次发现需要如下dll文件

libgcc_s_dw2-1.dll

libstdc++-6.dll

libwinpthread-1.dll

icuin52.dll

icuuc52.dll

icudt52.dll

最终结果:

3.QT中QCommandLineParser和QCommandLineOption解析命令行参数的更多相关文章

  1. linux 中解析命令行参数(getopt_long用法)

    linux 中解析命令行参数(getopt_long用法) http://www.educity.cn/linux/518242.html 详细解析命令行的getopt_long()函数 http:/ ...

  2. C语言中使用库函数解析命令行参数

    在编写需要命令行参数的C程序的时候,往往我们需要先解析命令行参数,然后根据这些参数来启动我们的程序. C的库函数中提供了两个函数可以用来帮助我们解析命令行参数:getopt.getopt_long. ...

  3. optparse模块解析命令行参数的说明及优化

    一.关于解析命令行参数的方法 关于“解析命令行参数”的方法我们一般都会用到sys.argv跟optparse模块.关于sys.argv,网上有一篇非常优秀的博客已经介绍的很详细了,大家可以去这里参考: ...

  4. python解析命令行参数

    常常需要解析命令行参数,经常忘记,好烦,总结下来吧. 1.Python 中也可以所用 sys 的 sys.argv 来获取命令行参数: sys.argv 是命令行参数列表 参数个数:len(sys.a ...

  5. boost之program_options库,解析命令行参数、读取配置文件

    一.命令行解析 tprogram_options解析命令行参数示例代码: #include <iostream> using namespace std; #include <boo ...

  6. Windows下解析命令行参数

    linux通常使用GNU C提供的函数getopt.getopt_long.getopt_long_only函数来解析命令行参数. 移植到Windows下 getopt.h #ifndef _GETO ...

  7. 使用 Apache Commons CLI 解析命令行参数示例

    很好的输入参数解析方法 ,转载记录下 转载在: https://www.cnblogs.com/onmyway20xx/p/7346709.html Apache Commons CLI 简介 Apa ...

  8. Shell 参数(2) --解析命令行参数工具:getopts/getopt

    getopt 与 getopts 都是 Bash 中用来获取与分析命令行参数的工具,常用在 Shell 脚本中被用来分析脚本参数. 两者的比较 (1)getopts 是 Shell 内建命令,geto ...

  9. getopt_long函数解析命令行参数

    转载:http://blog.csdn.net/hcx25909/article/details/7388750 每一天你都在使用大量的命令行程序,是不是感觉那些命令行参数用起来比较方便,他们都是使用 ...

随机推荐

  1. ●BZOJ 4556 [Tjoi2016&Heoi2016]字符串

    题链: http://www.lydsy.com/JudgeOnline/problem.php?id=4556 题解: 巨恶心...但是题很好呀,可以练习好几个比较麻烦的算法~ 1).预处理 首先用 ...

  2. 左偏树(BZOJ4003)

    左偏树打个标记,没了. #include <cstdio> #include <vector> using namespace std; typedef long long l ...

  3. ssh远程登陆

    ssh远程登录命令简单实例   ssh命令用于远程登录上Linux主机.   常用格式:ssh [-l login_name] [-p port] [user@]hostname 更详细的可以用ssh ...

  4. 二叉树的基本操作(含Huffman树)

    大二时候写的烂代码,翻出来复习复习(o(╯□╰)o). 代码: #include <stdio.h> #include <stdlib.h> #define Max_Size ...

  5. TensorFlow 中文资源全集,官方网站,安装教程,入门教程,实战项目,学习路径。

    Awesome-TensorFlow-Chinese TensorFlow 中文资源全集,学习路径推荐: 官方网站,初步了解. 安装教程,安装之后跑起来. 入门教程,简单的模型学习和运行. 实战项目, ...

  6. A TensorBoard plugin for visualizing arbitrary tensors in a video as your network trains.Beholder是一个TensorBoard插件,用于在模型训练时查看视频帧。

    Beholder is a TensorBoard plugin for viewing frames of a video while your model trains. It comes wit ...

  7. TensorFlow Serving-TensorFlow 服务

    TensorFlow服务是一个用于服务机器学习模型的开源软件库.它处理机器学习的推断方面,在培训和管理他们的生命周期后采取模型,通过高性能,引用计数的查找表为客户端提供版本化访问. 可以同时提供多个模 ...

  8. web性能优化之--合理使用http缓存和localStorage做资源缓存

    一.前言 开始先扯点别的: 估计很多前端er的同学应该遇到过:在旧项目中添加新的功能模块.或者修改一些静态文件时候,当代码部署到线上之后,需求方验收OK,此时你送了一口气,当你准备开始得意于自己的ma ...

  9. Dubbo介绍和服务架构分析

    Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和Spring框架无缝集成.使用zookeeper作为服务的注册中心,对外提供服务 ...

  10. Java为什么要配置环境变量及如何配置环境变量

    在没有配置环境变量之前,用cmd执行Java文件,需要指明Java的可执行文件,否则无法运行. 配置环境是为了在不用切换可执行文件目录下,方便Java程序的执行和控制. 那么环境变量就是让系统根据环境 ...