欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

Qt中对main.cpp的代码解释

发布时间:2025/3/15 编程问答 32 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Qt中对main.cpp的代码解释 小编觉得挺不错的,现在分享给大家,帮大家做个参考.
#include "mywidget.h" #include <QApplication> // 包含一个应用程序类的头文件// main程序入口,argc命令行变量的数量,argv命令行变量的数组 int main(int argc, char *argv[]) {// a应用程序对象,在qt中,应用程序对象有且仅有1个QApplication a(argc, argv);// 窗口对象,父类为QWidgetmyWidget w;// 窗口对象默认不会显示,必须调用show方法w.show();// 让a进入消息循环,不会一闪而过,让代码阻塞到这行return a.exec(); } QT += core gui // Qt包含的模块 greaterThan(QT_MAJOR_VERSION, 4): QT += widgets // 大于4版本以上包含widget模块 TARGET = qt2 // 目标 生成的.exe程序的名称 TEMPLATE = app // 应用程序模板 SOURCES += \main.cpp \mywidget.cpp// 源文件 HEADERS += \mywidget.h// 头文件 #ifndef MYWIDGET_H #define MYWIDGET_H #include <QWidget> // 包含头文件QWidget 窗口类 class myWidget : public QWidget {Q_OBJECT// 宏,允许类中使用信号与槽机制 public:myWidget(QWidget *parent = 0);// 带参数的构造函数~myWidget();// 析构函数 }; #endif // MYWIDGET_H 命名规范 类名:首字母大写,单词和单词之间首字母大写 函数名/变量名:首字母小写,单词和单词之间首字母大写快捷键 注释:ctrl+/ 运行:ctrl+run 编译:ctrl+build 查找:ctrl+find 整行移动:ctrl+shift+↑/↓ 帮助文档: (1)F1 (2)左侧图标 (3)assistant F1全屏 Esc退出全屏 Esc退出帮助文档 自动对齐:ctrl+i 同名之间的.h和.cpp的切换:F4 创建第一个按钮 QPushButton *btn = new QPushButton(); // btn->show(); // show是以顶层的方式弹出窗口控件 // 让btn对象依赖在mywidget窗口中 btn->setParent(this); //设置到对象树中 // 显示文本 btn->setText("XXX");创建第二个按钮:按照控件大小创建窗口 QPushButton *btn = new QPushButton(“XXX”,this); // 重置窗口大小 resize(600,400); // 移动第二个按钮 btn->move(100,100); //设置窗口标题 setWindowTitle("First"); // 设置固定窗口大小 setFixedSize(600,400); 打印和释放的顺序是不一样的 对象树:当创建的对象在堆区的时候,如果指定的父亲是QObject派生下来的类或者QObject子类派生下来的类,可以不用管理释放的操作,对象会放入到对象树当中,在一定程度上简化了内存回收机制 自定义信号 写到signal下 返回值是void,只需要声明,不需要实现 可以有参数 可以重载槽函数 早期必须写到public slots下 高级的版本可以写到public或者全局下 返回值为void,需要声明,也需要实现 可以有参数,可以发生重载 拓展 信号可以连接信号 一个信号可以连接多个槽函数 多个信号可以连接一个槽函数 信号与槽函数的参数必须类型一一对应 信号参数个数可以多于槽函数的参数个数 Qt4版本以前的连接 使用SIGNAL()以及SLOT 优点:参数直观 缺点:参数类型不做检测 Qt5以上支持Qt4版本的写法,反之不支持 Lambda Qt4: CONGIG+=C++11

总结

以上是生活随笔为你收集整理的Qt中对main.cpp的代码解释的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。