- 博客(86)
- 收藏
- 关注
原创 23种设计模式 - 适配器模式(Adapter)
适配器模式是一种结构型设计模式,将一个类的接口转换为客户端期望的接口,使原本不兼容的类可以协同工作。
2026-03-26 08:57:21
343
原创 23种设计模式 - 抽象工厂模式(Abstract Factory)
抽象工厂模式是一种创建型设计模式,提供创建一组相关或依赖对象的接口,而无需指定具体类。
2026-03-25 17:15:36
276
原创 23种设计模式 - 工厂方法(Factory Method)
工厂方法是一种创建型设计模式,将对象的创建过程封装在子类中,使调用者无需关心具体实现类即可获取对象实例。
2026-03-25 16:55:33
70
原创 深入理解TCP四次挥手
在网络通信中,基于 TCP 的连接并不是“说断就断”,而是需要通过一套严谨的流程来优雅结束,这就是常说的“四次挥手”。简单来说,它的核心目的是:确保双方的数据都发送完毕,并且彼此都确认连接可以安全关闭。
2026-03-17 15:43:11
390
原创 第十二篇:布局管理-设置Tab键顺序
在 Qt 开发中,Tab 键顺序(Tab Order)是一个重要的功能,它控制了当用户按下Tab键时,控件之间焦点的切换顺序。合理的 Tab 顺序能提高用户的操作效率,使得应用程序的界面更加易用和直观。
2024-11-28 17:52:47
1166
原创 第十一篇:布局管理-设置伙伴(buddy)
伙伴机制是 Qt 提供的一种功能,允许开发者通过标签(QLabel)为某个控件(如QLineEdit)设置一个快捷键(通常是Alt+字母的组合)。当用户按下快捷键时,焦点会自动切换到标签绑定的控件。
2024-11-28 16:16:16
1049
原创 第十篇:布局管理-布局管理系统
Qt 的布局管理系统为控件的排版提供了强大而灵活的支持。它通过自动调整控件的大小和位置来帮助开发者创建响应式的界面。
2024-11-26 15:47:32
686
原创 第八篇:其他窗口部件 QAbstractSpinBox
QAbstractSpinBox 是 Qt 提供的一个抽象基类,主要用于创建带递增/递减按钮的输入控件。它结合了行编辑器和按钮的功能,允许用户通过直接输入或点击按钮来设置值。
2024-11-25 17:08:39
534
原创 第七篇:其他窗口部件 QLineEdit
行编辑器 QLineEdit 部件是一个单行的文本编辑器,它允许用户输入和编辑单行的纯文本内容,而且提供了一系列有用的功能,包括撤销与恢复、剪切和拖放等操作。其中,剪切复制等功能是行编辑自带的,不用自己编码实现。
2024-11-25 16:05:19
1038
原创 深入理解TCP三次握手
在网络通信中,TCP(Transmission Control Protocol,传输控制协议)是一个可靠的、面向连接的协议,它保证了数据包的顺序和完整性。为了建立一个稳定的连接,TCP 使用了一个被称为(Three-Way Handshake)的过程。在本文,我们将深入剖析 TCP 三次握手的工作原理。
2024-09-11 16:02:49
1436
原创 第六篇:主窗口部件 QMainWindow
主窗口提供了一个用于构建应用程序用户界面的框架。Qt 提供了以 QMainWindow 和其他一些相关的类共同完成主窗口的管理。
2024-09-03 16:46:48
848
原创 教程5_PCells(参数化单元)
PCells 是指在给定参数的基础上动态生成的布局单元。这些参数可以是几何尺寸、图层选择或其他控制布局形状和属性的变量。
2024-08-23 14:26:46
1344
原创 教程3_单元层次结构1
单元层次结构是指通过将多个单元嵌套使用,形成具有层次结构的设计。每个单元可以包含其他单元的实例,这些实例称为“子单元”,而包含这些子单元的单元称为“父单元”。这种结构使得复杂设计变得模块化和可复用。
2024-08-22 16:36:01
1264
1
原创 ubuntu18.04设置静态IP
Ubuntu 从 17.10 (Artful Aardvark) 版本开始引入了 Netplan 作为默认的网络配置工具。Netplan 取代了之前的ifupdown(linux系统默认的网络管理工具),以提供更现代化和灵活的网络配置方式。之前的网络配置,常编辑 /etc/network/interfaces文件。
2024-07-04 14:26:45
1793
原创 nccl-test多机多卡测试
NCCL(NVIDIA Collective Communications Library)是由 NVIDIA 开发的一种高性能的多 GPU 通信库,用于在多个 NVIDIA GPU 之间实现快速的数据传输和协同计算。它可以在深度学习和高性能计算领域中提供分布式训练和数据并行加速的支持。
2024-07-03 16:33:02
4973
原创 C++ 静态工厂函数
静态工厂函数是C++中一种灵活而优雅的设计模式,它可以帮助我们实现对象的创建和管理。通过封装对象创建逻辑、隐藏实现细节、提高灵活性等优点,静态工厂函数在实际项目中具有广泛的应用价值。合理地使用静态工厂函数可以使代码更加清晰、可维护、可扩展,是C++编程中的一种重要的设计技巧。
2024-04-25 10:20:50
811
原创 Qt+OpenGL入门教程(四)——VBO、VAO和EBO
在OpenGL中,VAO(Vertex Array Object)、VBO(Vertex Buffer Object)和EBO(Element Buffer Object)是三个核心概念。
2024-04-01 13:26:11
1525
原创 Qt+OpenGL入门教程(二)——OpenGL渲染管线
OpenGL渲染管线是指OpenGL图形渲染过程中的一系列阶段,它描述了如何将输入的几何数据转换成最终的图像输出。
2024-03-28 11:45:52
1957
原创 Qt+OpenGl入门教程(一)——认识OpenGL
一般它被认为是一个API(Application Programming Interface,应用程序编程接口),包含了一系列可以操作图形、图像的函数。然而,OpenGL本身并不是一个API,它仅仅是一个由制定并维护的规范(Specification)。
2024-03-28 09:47:57
2052
原创 Qt网络编程——处理TCP粘包
TCP 是面向连接的、安全的流式传输协议。所谓流式协议,即协议的内容是像流水一样的字节流,内容与内容之间没有明确的分界标志,因此会产生粘包现象
2024-03-07 13:31:38
1436
原创 QT网络编程——TCP
TCP(Transmission Control Protocol,传输控制协议)是一个用于数据传输的低层的网络协议,多个互联网协议(包括 HTTP 和 FTP)都是基于 TCP 协议的。它是可靠的、面向流、面向连接的传输协议,特别适合连续数据的传输。TCP(Transmission Control Protocol,传输控制协议)是一个用于数据传输的低层的网络协议,多个互联网协议(包括 HTTP 和 FTP)都是基于 TCP 协议的。它是可靠的、面向流、面向连接的传输协议,特别适合连续数据的传输。
2024-02-27 15:40:13
1556
原创 Qt网络编程——UDP
UDP(User Datagram Protocol,用户数据报协议)是一个轻量级的、不提供可靠性保证的、面向数据报的无连接协议,用于可靠性不是非常重要的情况。
2024-02-27 10:22:08
856
原创 主机信息查询
QHsotInfo 主要关注主机名、域名和 IP 地址等主机相关的信息,适用于解析主机信息的场景。QNetworkInterface 主要关注设备上的网络接口,提供了详细的接口信息,适用于获取设备网络配置的场景。
2024-02-26 16:26:06
554
原创 第五篇:其他窗口部件 QAbstractButton
QAbstractButton 类是按钮部件的抽象基类,提供了按钮的通用功能。它的子类包括标准按钮 QPushButton、工具按钮 QToolButton、复选框 QCheckBox和单选按钮 QRadioButton 等。
2024-01-20 10:31:48
1062
原创 第四篇:其他窗口部件 QFrame
QFrame 类是带有边框的部件的基类。带边框部件最主要的特点就是可以有一个明显的边界框架。QFrame 类的主要功能就是用来实现不同的边框效果,这主要是由边框形状(Shape)和边框阴影(Shadow)组合来形成的。
2024-01-19 11:20:51
1234
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅