QT项目复习

概念
  • 一个PushButton按钮显示在Widget窗口上,就是父子窗口

一、内存管理

  • 一定要在上建立对象,在栈上对象是显示不出来的,因为离开了作用域,就结束了
  • 可以不用手动delete——
  • qmake和cmake的用处——

用来组建项目,用它们来生成makefile,然后通过makefile来编译

二、槽

三、服务器代码

  • listen()结束后创建线程池
  • 创建完100个线程后,每个线程都去accept()等待
  • 线程要设置成detach()分离态
  • 然后clntfd开始accept()等待,谁accept()到了(accept()返回),谁就去处理请求

3.1 处理客户端的请求

  • 处理客户端的请求,首先从解析封包开始
  • readPack()来读数据包

该函数的功能是读取一个完整的0203数据包

  • 一个字节一个字节的读,判断第一个是不是CMD_BEGIN
  • 如果发现是CMD_BEGIN,那么说明这个包是合法的,我们讲读出的字节存入到buf

四、客户端代码

  • 包头包尾都使用来指定
  • QT中使用this则是使用父对象来托管内存,可以通过托管父对象来释放内存。
  • QT中的槽函数是放在SLOT()中的
  • 继承关系——


QObject不仅实现了内存管理机制,也实现了信号与槽机制

4.1 QT中的信号与槽机制

  • 方便C++对象之间的通信


老师学生 之间的 互相通信

  • 信号与槽之间多对一或者一对多的连接
  • 槽函数和信号函数需要有参数的时候,重载一次加上参数即可
  • 需要继承自QObject,然后加上Q_OBJECT宏,从而才可以使用信号与槽机制
  • 【信号函数】是只声明不定义
  • 【槽函数】可以像普通函数一样使用,唯一区别是可以跟信号关联

4.2 QDialog介绍

  • QDialog也继承自QWidget
  • QWidget是普通窗口
  • QDialog是模式窗口

4.3 QString介绍

  • 用来处理字符串

4.4 QByteArray介绍

  • 用于字节流字节数组
  • 没有编码的概念

你可能感兴趣的:(QT项目复习)