C++的Qt项目,QApplication a(argc,argv);这行语句啥意思?如下

#include"mainwindow.h"#include<QApplication>intmain(intargc,char*argv[]){QApplication... #include "mainwindow.h"
#include <QApplication>

int main(int argc, char *argv[])
{

QApplication a(argc, argv);//对象a构造函数接收一个整数,一个数组指针,对象a有什么用,俩参数代表啥?

MainWindow w;//这是个窗口对象,我懂

w.show();//显示窗口

return a.exec();//又把上面的a的成员函数返回了,exec()啥作用?
}

问题来了:
QApplication有什么用,俩参数argc, argv代表什么,还有它的成员函数exec()有什么用?
如有我不理解的,请指出我缺的语法知识点。
展开
 我来答
A1620921354
2020-04-13 · TA获得超过5813个赞
知道答主
回答量:388
采纳率:100%
帮助的人:16.9万
展开全部

Argc和argv是从命令行传入的参数。

例如,如果输入命令CP文件,C在Linux中,argc=3 argv是上述行中的字符串数组。

a.Exec()是程序进程的开始,命令:CP file。C file1。参数argc=3表示有三个命令。字符串数组指针argv指向整个命令“CP file”.C file1.C”。

QApplication只能通过输入命令激活和使用。也可以单击该命令或进行其他操作。

扩展资料:

Qt的优势

1、良的跨平台特性:

Qt支持下列操作系统: Microsoft Windows 95/98, Microsoft Windows NT, Linux, Solaris, SunOS, HP-UX, Digital UNIX (OSF/1, Tru64), Irix, FreeBSD, BSD/OS, SCO, AIX, OS390,QNX 等等。

2、面向对象

Qt 的良好封装机制使得 Qt 的模块化程度非常高,可重用性较好,对于用户开发来说是非常 方便的。 Qt 提供了一种称为 signals/slots 的安全类型来替代 callback,这使得各个元件 之间的协同工作变得十分简单。

3、丰富的 API

Qt 包括多达 250 个以上的 C++ 类,还提供基于模板的 collections, serialization, file, I/O device, directory management, date/time 类。甚至还包括正则表达式的处理功能。

疯人院长qwsdcv
推荐于2017-09-07 · TA获得超过195个赞
知道答主
回答量:54
采纳率:0%
帮助的人:60.8万
展开全部
看来你是刚开始学。
对于QT这样的图形编程来说,一般都是逻辑绘图分离的,QApplication代表一个程序,Window代表一个窗口。一个程序可以有多个窗口。
argc和argv是命令行传进去的参数。比如linux里输入一个命令
cp file.c file1.c
那么argc=3 argv就是上面那行字符串数组。
因为图形编程有时也需要从命令行传递参数给程序,所以才会有argc和argv。

a.exec()就是程序进程开始运行。
追问
命令:cp file.c file1.c
参数argc=3,代表有三条命令,字符串数组指针argv指向整条命令“cp file.c file1.c”,
只有输入命令,QApplication才能被激活使用,命令也可以是点击鼠标什么的吧,这样理解对吗。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式