- 博客(105)
- 收藏
- 关注
原创 【QT】窗口详解
本文详细介绍了Qt中QMainWindow窗口组件及其功能实现。主要内容包括:1. 菜单栏(QMenuBar)的创建和菜单项(QAction)的添加;2. 工具栏(QToolBar)的设置与属性控制;3. 状态栏(QStatusBar)的消息显示;4. 浮动窗口(QDockWidget)的创建和停靠设置;5. 各类对话框的使用。
2025-06-11 22:02:22
605
原创 【QT控件】布局管理器
本文详细介绍了Qt中的布局管理器机制,包括垂直布局(QVBoxLayout)、水平布局(QHBoxLayout)、网格布局(QGridLayout)和表单布局(QFormLayout)四种核心布局方式。通过代码示例展示了如何创建布局、添加控件、设置行列比例和嵌套布局,并讲解了使用Spacer调整控件间距的方法。文章重点对比了布局管理器与传统绝对定位的优势,强调布局管理器能自动计算控件位置和尺寸,实现窗口自适应调整。
2025-06-09 10:00:00
1193
原创 【QT控件】容器类控件
本文介绍了Qt中的两种界面组件:QGroupBox分组框和QTabWidget标签页控件。QGroupBox用于将相关控件分组显示,主要起美化作用,QTabWidget可实现多标签页管理
2025-06-08 22:21:00
840
原创 【QT控件】多元素控件详解
本文介绍了Qt中三种常用控件ListWidget、TableWidget和TreeWidget的使用方法。ListWidget用于创建纵向列表,支持添加、选中和删除列表项;TableWidget用于构建表格数据,可以动态增删行列和单元格内容;TreeWidget则用于显示树形结构,支持添加顶层节点和子节点。
2025-06-08 16:43:01
890
原创 【QT控件】输入类控件详解
本文详细介绍了Qt框架中常用输入控件的使用方法,包括QLineEdit(单行文本框)、QTextEdit(多行文本框)、QComboBox(下拉框)、QSpinBox(数字微调框)、QDateTimeEdit(日期时间控件)、QDial(旋钮)和QSlider(滑动条)等。
2025-06-07 22:16:41
1187
原创 【QT控件】显示类控件
本文介绍了Qt中常用控件的使用方法,包括QLabel、QLCDNumber、QProgressBar和QCalendarWidget。
2025-06-05 23:49:01
955
原创 【QT控件】按钮类控件
本文介绍了Qt中三种常用按钮控件的使用方法:1) QPushButton的基本功能及设置图标、快捷键等特性;2) QRadioButton单选按钮的分组和事件处理;3) QCheckBox复选框的状态获取。通过多个代码示例展示了如何创建带图标按钮、实现方向键控制、设置默认选中状态、区分不同事件类型以及使用QButtonGroup进行按钮分组等实用技巧,帮助开发者快速掌握Qt按钮控件的核心功能和应用场景。
2025-06-04 22:59:34
872
原创 【QT控件】QWidget 常用核心属性介绍 -- 万字详解
本文介绍了Qt框架中QWidget控件的核心属性和使用方法。主要内容包括:1. 控件基本概念:Widget是构成GUI界面的基本元素,Qt内置大量常用控件并支持自定义。2. QWidget常用核心属性详解!
2025-06-02 23:17:26
913
原创 【从零开始学习QT】信号和槽
信号与槽是Qt特有的消息通信机制,实现对象间的松耦合交互。信号对应事件,槽则是响应函数。通过connect()建立关联,支持一对一、一对多、多对一等多种连接方式。特性包括:1. 信号只需声明,槽需实现;2. 支持带参数和重载;3. 可通过Lambda表达式定义槽;
2025-06-01 19:00:08
795
2
原创 【从零开始学习QT】快捷键、帮助文档、Qt窗口坐标体系
本文介绍了QtCreator常用快捷键和帮助文档的三种调用方式。同时简要说明了Qt窗口坐标体系的特点,并演示了通过帮助文档查询QPushButton控件的方法。
2025-05-29 21:09:56
604
原创 【从零开始学习QT】Qt 概述
Qt是一个跨平台的C++图形用户界面框架,支持Windows、Linux、macOS等多种操作系统及Android、iOS移动平台。它提供可视化开发工具,简化了应用程序开发流程,支持拖拽式UI设计。Qt发展历程经历了多次收购,如今已成为功能全面的开发工具,特别适用于桌面应用、移动应用和嵌入式系统开发。文章详细介绍了Qt的安装配置过程、开发环境QtCreator的界面功能,以及如何创建简单项目。
2025-05-28 22:30:21
1220
原创 【Boost搜索引擎】构建Boost站内搜索引擎实践
本项目实现了一个基于C++的搜索引擎,技术栈包括C++11、STL、Boost、Jsoncpp、cppjieba和cpp-httplib,运行环境为Ubuntu 22.04。项目通过正排索引和倒排索引实现文档的快速检索,正排索引存储文档内容,倒排索引通过分词将关键词映射到文档ID。项目还实现了数据清洗模块,去除HTML标签并提取有效内容。搜索模块通过分词、倒排索引查找、结果合并排序等步骤,最终返回JSON格式的搜索结果。前端使用HTML、CSS和JavaScript实现,通过HTTP请求与后端交互,展示搜索
2025-05-16 21:11:51
1105
原创 【Linux】进程间通信(匿名管道和进程池)
进程间通信(IPC,Inter-Process Communication)是操作系统中不同进程之间交换数据、协调工作的核心机制。由于每个进程拥有独立的内存空间,彼此隔离,因此需要特定的技术手段实现跨进程协作。进程间通信(IPC)是指运行在同一台计算机或不同计算机上的多个进程之间进行数据交换和通信的技术。由于每个进程都有自己的地址空间,它们无法直接访问彼此的数据,因此需要通过特定的机制实现通信。IPC是操作系统和多进程编程中的一个重要概念,广泛应用于分布式系统、多任务操作系统以及各种应用程序之间。
2025-04-17 21:43:33
1099
原创 排序(插入排序、希尔排序、选择排序、堆排序、冒泡排序、快速排序、归并排序)
所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,r[i]=r[j],且r[i]在r[j]之前,而在排序后的序列中,r[i]仍在r[j]之前,则称这种排序算法是稳定的;否则称为不稳定的。数据元素全部放在内存中的排序。数据元素太多不能同时放在内存中,根据排序过程的要求不能在内外存之间移动数据的排序。
2025-04-17 14:08:44
1031
原创 算法专题(八):分治-归并排序
本篇通过讲解 排序数组、LCR 170.交易逆序对的总数(数组中的逆序对)、计算右侧小于当前元素的个数、翻转对 ,四道题目来讲解分治-归并算法!
2025-04-06 20:20:33
680
原创 【C++】从零实现Json-Rpc框架(2)
本篇文章是对第三方库介绍和使用(JsonCpp库,Muduo库)和C++11 异步调用的介绍!
2025-04-05 21:15:00
2003
1
原创 【C++】从零实现Json-Rpc框架(1)
RPC(Remote Procedure Call)远程过程调用,是一种通过网络从远程计算机上请求服务,而不需要了解底层网络通信细节。RPC可以使用多种网络协议进行通信, 如HTTP、TCP、UDP等, 并且在TCP/IP网络四层模型中跨越了传输层和应用层。简言之RPC就是像调用本地方法一样调用远程方法。
2025-04-05 19:00:00
986
原创 算法专题(七):分治-快排
本文通过leetcode的四道题目,颜色分类、排序数组、数组中第K个最大元素、LCR 159. 库存管理 III,来讲解分治-快排算法!
2025-03-23 13:50:35
809
原创 【Linux】Ext系列文件系统(下)
我们想要在硬盘上储文件,必须先把硬盘格式化为某种格式的文件系统,才能存储文件。文件系统的目的就是组织和管理硬盘中的文件。由于 ext2 文件系统具有较高的稳定性和可靠性,被广泛应用于 Linux 服务器中,用于存储系统文件、用户数据、应用程序等。
2025-03-19 12:10:55
973
原创 【Linux】Ext系列文件系统(上)
文件=属性+内容。被打开的文件通过基础IO到内存中,没有被打开的文件在磁盘中。文件在磁盘上最基本的诉求就是被用户找到,这也是文件系统最基本的诉求。
2025-03-17 20:00:00
958
原创 【拓展学习】deepseek从入门到精通
DeepSeek-R1,由深度求索公司开发的智能助手,擅长通过思考树框架进行深度逻辑推理。能流畅使用多语言提供信息查询、数据分析、知识解答等服务,覆盖科技、教育、生活等广泛领域
2025-03-16 11:50:16
1058
原创 【Linux】缓冲区
缓冲区是内存空间的一部分。也就是说,在内存空间中预留了一定的存储空间,这些存储空间用来缓冲输入或输出的数据,这部分预留的空间就叫做缓冲区。缓冲区根据其对应的是输入设备还是输出设备,分为输入缓冲区和输出缓冲区。
2025-03-09 14:21:54
1076
1
原创 【Linux】详谈 基础I/O
在windows中是文件的东西,它们在linux中也是文件;其次一些在windows中不是文件的东西,比如进程、磁盘、显示器、键盘这样硬件设备也被抽象成了文件,你可以使用访问文件的方法访问它们获得信息。
2025-03-09 12:58:47
881
1
原创 【Linux】进程地址空间和虚拟地址空间
进程地址空间是操作系统为每个进程分配的独立内存区域,用于存储代码、数据、堆和栈等信息。通过虚拟内存机制,操作系统实现了进程之间的内存隔离,提高了系统的安全性和稳定性。
2025-03-01 12:45:31
931
1
原创 【linux】详谈 环境变量
在 Linux 系统中,环境变量是一种动态的命名值对,用于配置和影响程序的运行环境。它们为程序提供了系统级别的信息,例如用户的家目录、默认的文本编辑器、系统路径等。它们为程序提供了灵活的配置方式,同时也简化了系统的管理。
2025-03-01 10:53:39
1215
2
原创 算法专题(四):前缀和
本篇文章通过【模版】前缀和、【模版】二维前缀和、寻找数组的中心下班、除自身以外数组的乘积、和位K的子数组、和可被K整除的子数组、连续数组、矩阵区域和,这八道题目讲解前缀和算法!
2025-02-21 19:17:51
1048
1
原创 【Linux】详谈 进程控制
本文将系统介绍进程控制的基本要素,包括进程创建, 进程终止, 进程等待等方面。深入理解进程创建的相关知识, 帮助更好的构建知识架构!进程控制是操作系统中的一个重要主题,主要涉及如何管理和调度进程以确保计算机系统的高效运行!
2025-02-15 22:32:09
1463
1
原创 【Linux】冯诺依曼体系结构和操作系统概念理解
冯诺依曼体系是现代计算机的基本架构。主要特点是存储程序控制,用二进制表示数据和指令,指令和数据分开存储且顺序执行。由运算器、控制器、存储器、输入设备、输出设备组成。1946 年由冯・诺依曼提出,随着第一台 “存储程序” 计算机 EDVAC 诞生奠定基础。该体系奠定现代计算机基础,推动计算机技术发展,促进计算机应用的普及。截至目前,我们所认识的计算机,都是由一个个的硬件组件组成• 输入单元:包括键盘, 鼠标,扫描仪, 写板等• 中央处理器(CPU):含有运算器和控制器等。
2025-02-06 11:34:01
779
原创 【Linux】自动化构建-make/Makefile
• make是一个命令工具,是一个解释makefile中指令的命令工具,一般来说,大多数的IDE都有这个命令,比如:Delphi的make,Visual C++的nmake,Linux下GNU的make。可见,makefile都成为了一种在工程方面的编译方法。• make是一条命令,makefile是一个文件,两个搭配使用,完成项目自动化构建。
2025-01-26 12:13:29
866
1
原创 【Linux】gcc/g++的使用
GCC(GNU Compiler Collection)是一个开源的编译器集合,支持多种编程语言,其中 gcc 和 g++ 是最常用的两种编译器。gcc:用于编译 C 语言程序。它是编译 C 代码的主要工具,也能处理一些其他语言(如 Objective-C、Fortran 等),但默认用于 C。g++:用于编译 C++ 程序。它不仅能编译 C++ 代码,还会自动链接 C++ 标准库(如 libstdc++)。默认链接库:g++ 自动链接 C++ 标准库,gcc 需要手动处理。
2025-01-26 11:40:00
968
1
原创 算法专题(三):二分查找
请大家一定不要觉得背下模板就能解决所有二分问题(不要死记模版)。二分问题最重要的就是要分析题意,然后确定要搜索的区间,根据分析问题来写出二分查找算法的代码。1. 关于什么时候用三段式,还是二段式中的某一个,一定不要强行去用,而是通过具体的问题分析情况,根据查找区间的变化确定指针的转移过程,从而选择一个模板。
2025-01-21 21:37:47
1274
原创 算法专题(二):滑动窗口
本文通过讲解 长度最小的子数组、无重复字符法最长子串、最大连续1的个数III、将x减到0的最小操作数、水果成篮、找到字符串中的所以字母异位词、串联所有的字符串、最小覆盖子串 等八道题来讲解滑动窗口算法!
2025-01-16 15:11:21
1078
原创 算法专题(一):双指针
本文通过 移动零、复写零、快乐数、盛水最多的容器、有效三角形的个数、查找总价格为目标值的两个商品(和为s的两个数字)、三数之和、四数之和 八道题来讲解双指针算法!
2025-01-14 14:21:44
886
原创 Linux基本指令(汇总)
本篇介绍了Linux中的ls、pwd、cd、touch、mkdir、rmdir、rm、man、cp、mv、cat、more、less、head、tail、date、cal、find、which、whereis、alias、grep、zip、tar、umame-r 等指令!
2025-01-08 22:38:03
911
原创 【C++】智能指针的使用及其原理
什么是内存泄漏:内存泄漏指因为疏忽或错误造成程序未能释放已经不再使用的内存,一般是忘记释放或者发生异常释放程序未能执行导致的。内存泄漏并不是指内存在物理上的消失,而是应用程序分配某段内存后,因为设计错误,失去了对该段内存的控制,因而造成了内存的浪费。内存泄漏的危害:普通程序运行一会就结束了出现内存泄漏问题也不大,进程正常结束,页表的映射关系解除,物理内存也可以释放。
2025-01-01 15:41:17
1227
1
原创 【C++】异常
异常处理机制允许程序中独立开发的部分能够在运行时就出现的问题进行通信并做出相应的处理,异常使得我们能够将问题的检测与解决问题的过程分开,程序的一部分负责检测问题的出现,然后解决问题的任务传递给程序的另一部分,检测环节无须知道问题的处理模块的所有细节。C语言主要通过错误码的形式处理错误,错误码本质就是对错误信息进行分类编号,拿到错误码以后还要去查询错误信息,比较麻烦。异常时抛出一个对象,这个对象可以函数更全面的各种信息。
2024-12-29 15:39:36
982
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人