MinGW版本:5.3.0spa
Qt版本:5.8.0操作系统
Qt Creator版本:4.2.1code
main.cpp
#include "mainwindow.h" #include <QApplication>//GUI 程序是,非GUI 程序是。其实是的子类。 #include <QLabel> int main(int argc, char *argv[]) { QApplication a(argc, argv);//在栈上建立QApplication对象
//QLabel *label = new QLabel("Hello, world");// 不建议这样作,由于还要人为delete,不然存在内存泄漏的状况,尽管操做系统会进行回收,可是资源不是正常释放的。 //label->setAttribute(Qt::WA_DeleteOnClose); // 必须在堆上建立的话, 须要加上这句, 因为a是在栈上建立的,而label是在堆上建立的,这意味着,label会在a以后析构。也就是说,label的生命周期长于a的生命周期,这在早期Qt版本中是不能够的,新版本Qt肯定了a.exec()的实现机制,使这种作法成为可能。
QLabel label("oppa ya");//在栈上建立QLabel对象 label.show(); return a.exec();//开启事件循环 }QApplicationQCoreApplicationQApplicationQCoreApplication