当前位置: 首页 > news >正文

QT基础与细节理解

前言

本博客旨在记录QT学习过程中的一些细节知识理解,由于问题的产生并非成体系,所以前期的记录可能会无序一些。烦请读者参阅目录进行快速的问题定位与跳转

QT基础与细节理解

    • 前言
    • 正文部分
      • QT基础1:正确理解: QWidget(parent), ui(new Ui::ui_mywidget)

正文部分

QT基础1:正确理解: QWidget(parent), ui(new Ui::ui_mywidget)

先摘抄一个定义完备的基本窗口项目,项目的结构如下:

- mywidget.pro --- qmake项目管理文件
- mywidget.h --- 基本窗口头文件
- mywidget.cpp --- 基本窗口类文件
- main.cpp --- 主类文件
- mywidget.ui --- 基本窗口样式文件

其中,mywidget.cpp中有参构造函数的写法引起我的注意:

MyWidget::MyWidget(QWidget *parent): QWidget(parent), ui(new Ui::ui_mywidget)

经过查阅资料,得知这是C++的一种参数初始化方式—参数初始化表,在正式进入构造函数前,会依次执行冒号后的初始化内容:

  • QWidget(parent) — 表征派生类MyWidget调用基类QWidget的有参构造方法QWidget(QWidget *parent),用于将由派生类初始化的对象注册为parent的子窗口(如果parent非空)
  • ui(new Ui::ui_mywidget) — 等价于Ui::ui_mywidget *ui = new Ui::ui_mywidget(也可以使用后者的写法,因为此参数的初始化不强调顺序),即完成指针变量ui的初始化工作

通过上述解析,我们可以清晰地认识到以下两个问题:

  • 冒号后的内容是C++的参数初始化表
  • 其有直接进行的函数调用,也有表征赋值的右值引用
http://www.lryc.cn/news/223936.html

相关文章:

  • 【MySQL数据库】 六
  • 微信总提示空间不足怎么办?三个方法随心选!
  • C语言每日一题(27)链表中倒数第k个结点
  • pdf转word
  • LeetCode热题100——二叉树
  • 【Linux】文件重定向以及一切皆文件
  • Go进阶之rpc和grpc
  • 润和软件HopeStage与奇安信网神终端安全管理系统、可信浏览器完成产品兼容性互认证
  • 模态对话框和非模态对话框
  • 【算法与数据结构】39、LeetCode组合总和
  • 行政大厅满意度调查内容
  • WordPress页脚配置备案号
  • 时间序列预测模型实战案例(十)(个人创新模型)通过堆叠CNN、GRU、LSTM实现多元预测和单元预测
  • 【有源码】基于uniapp的农场管理小程序springboot基于微信小程序的农场检测系统(源码 调试 lw 开题报告ppt)
  • 商城系统分布式下单
  • Java自学第5课:Java web开发环境概述,更换Eclipse版本
  • [网鼎杯 2020 青龙组]AreUSerialz
  • 使用Kotlin与Unirest库抓取音频文件的技术实践
  • gdb调试常用命令
  • CH11_重构API
  • UPLOAD-LABS1
  • WordPress相关文章推荐
  • 【QML】Qt和QML获取操作系统类型
  • CSS 显示、定位、布局、浮动
  • Java 学习笔记
  • 项目实战:优化Servlet,把所有围绕Fruit操作的Servlet封装成一个Servlet
  • Go语言函数参数
  • 【遍历二叉树的非递归算法,二叉树的层次遍历】
  • 数模之线性规划
  • 【C++】AVL树的4中旋转调整