一个最简单、最初级的QT程序如下所示
int main(int argc,char * argv[])
{
QApplication a(argc,argv);
MainWindow w;
w.show();
return a.exec();
}
(1)QApplication a(argc,argv);
定义一个 Qt 应用程序对象,它的构造函数接收和 main 函数一样的参数,是 Qt 图形界面程序的入口,就像 main 函数是普通 C++ 程序的入口一样。
(2)return a.exec();
会进入 Qt 应用程序的事件循环函数等待用户操作和系统的消息然后进行处理。
常见的c/c++语言main函数中都是直接return 0 的,程序直接退出。但图形程序通常需要与用户交互,不会自动关闭,而是一直等待用户操作。如果用户点击窗口的关闭按钮, 程序才会结束并返回一个值,默认是 0 。
qt中main函数开始就只是进行一个初始化工作,然后将控制权交给qt,接下来所有事件的处理就只剩下qt的事件循环处理了。