
海上月是天上月,眼前人是心上人。
发布于
2025-2-20
发布于
2025-2-19
发布于
2025-2-17
发布于
2025-2-12
发布于
2025-2-10
发布于
2025-1-10
发布于
2024-12-12
发布于
2024-12-11
发布于
2024-11-30
发布于
2024-11-5
发布于
2024-10-29
摘要:
Qt显示raw图 在Qt中无法直接显示raw图,需要先将raw图以二进制读取,再对QImage每个像素进行赋值操作 读取raw图(提前知晓raw图的宽高) 以二进制形式读取raw图,这里读取到vector中存储;由于是Unpacked 10类型,占10位,所以使用quint16占16位的类型来存储 阅读全文

摘要:
QTcpSocket Qt的QTcpSocket是用于实现TCP客户端或服务端通信的核心类,属于Qt Network模块。它基于事件驱动的异步机制,通过信号和槽实现高效的非阻塞网络通信。 继承自QAbstractSocket,提供以下核心功能: 建立/断开与TCP服务器的连接 异步发送和接收数据 错 阅读全文

摘要:
QTcpServer Qt的QTcpServer是用于创建TCP服务器端的核心类,基于事件驱动模型实现,支持监听客户端连接并处理网络通信。 QTcpServer的核心功能 监听连接:通过指定IP地址和端口号,服务器可以监听客户端的连接请求。 接受连接:当客户端发起连接请求时,QTcpServer会创 阅读全文

摘要:
Qt事件机制 Qt的事件系统是其框架核心机制之一,用于处理用户输入、窗口事件、异步操作等。 事件的基本概念 事件(Event):在Qt中,事件是QEvent类的子类对象,用于描述程序内部或外部发生的动作,例如: 用户输入:鼠标点击(QMouseEvent)、键盘按键(QKeyEvent)。 窗口系统 阅读全文

摘要:
QFile 文件操作 QT中的QFile是用于文件操作的强大工具,继承自**QIODevice**,提供了对本地文件系统的读写、文件信息查询、路径管理等功能。它是Qt框架中文件处理的核心类,支持跨平台操作(Windows、Linux、MacOS等)。掌握 QFile 的使用,是开发文件存储、配置管理 阅读全文

摘要:
信号与槽基本介绍 信号与槽(Signal & Slots)是Qt框架的核心机制,用于实现对象间的松耦合通信。它取代了传统的回调函数,提供更灵活、安全的方式处理时间响应。 基本概念 信号(Signal) 由对象在特定事件发生时发出(emit),如按钮点击、数据更新等。 声明在类的signals:区域, 阅读全文
摘要:
QApplication QApplication是Qt框架中最重要的基础类之一,专门用于管理GUI应用程序的控制流和核心设置,作QtWidget模块的核心控制器。 核心职责 事件循环管理:通过exec()启动的消息泵(message pump)持续处理系统事件(鼠标、键盘、窗口事件)。 GUI初始 阅读全文

摘要:
Lambda表达式 Lambda表达式是C++ 11 引入的一种匿名函数的方式,它允许你在需要函数的地方内联地定义函数,而无需单独命名函数,常用于简化代码、实现回调函数或配合 STL 算法使用。 基本语法结构 Lambda表达式的基本语法如下: [捕获列表](参数列表) -> 返回类型{ // 函数 阅读全文
摘要:
QSetting 配置管理 QSetting是Qt框架中用于管理应用程序配置和设置的类。它提供了一种简单的方式来存储和检索应用程序的设置,通常用于保存用户偏好、窗口位置、最近打开的文件等信息。 主要功能 跨平台支持: QSetting在不同操作系统上使用不同的后端存储: Windows:使用注册表 阅读全文
摘要:
元组 boost::tuple是Boost库中提供的允许程序员创建固定大小的元组,这些元组可以包含不同类型的元素。元组是一个数据结构,它可以存储多个值,这些值可以是不同类型的。boost::tuple是C++标准库中std::tuple的前身,后者在C++11标准中被引入。 特点 固定大小:一旦创建 阅读全文
摘要:
枚举 在C++中,枚举(Enumeration)是一种用户定义的数据类型,它由一组命名的整数常量组成。枚举在C++中有几种不同的形式。 传统枚举(Unscoped Enum) 传统枚举(也称为未作用域枚举)定义如下: enum Color { RED, GREEN, BLUE }; 上述例子中,Co 阅读全文
摘要:
Boost库 Bimap容器 概述 Bimap是Boost库中提供的一种双向映射(bi-directional map)数据结构。在C++标准库中,std::map或std::unordered_map只允许通过键来查找值,而boost::bimap允许同时通过键和值来查找对应的元素。 特点 双向映 阅读全文
摘要:
Qt运行生成的exe报错 “This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.” 阅读全文
摘要:
基数排序 基数排序(radix sort)的核心思想与计数排序一致,也通过统计个数来实现排序。计数排序适用于数据量n较大但数据范围m比较小的情况。假设我们需要对n=106个学号进行排序,而学号是一个8位数字,这意味着数据范围m=108非常大,使用计数排序需要分配大量内存空间,而基数排序可以避免这种情 阅读全文
摘要:
计数排序 计数排序(counting sort)通过统计元素数量来实现排序,通常应用于整数数组。 简单实现 给定一个长度为n的数组nums,其中的元素都是“非负整数”,计数排序的整体流程如下: 遍历数组,找出其中最大的数组,记为m,然后创建一个长度为 m+1 的辅助数组counter。 借助coun 阅读全文