- 博客(91)
- 收藏
- 关注
原创 【Linux】线程概念与控制
在⼀个程序⾥的⼀个执⾏路线就叫做线程(thread)。更准确的定义是:线程是“⼀个进程内部的控制序列”⼀切进程⾄少都有⼀个执⾏线程线程在进程内部运⾏,本质是在进程地址空间内运⾏在Linux系统中,在CPU眼中,看到的PCB都要⽐传统的进程更加轻量化透过进程虚拟地址空间,可以看到进程的⼤部分资源,将进程资源合理分配给每个执⾏流,就形成了线程执⾏流。
2025-08-24 23:00:05
410
原创 【测试】基于博客系统的测试报告
本博客系统项目是一个基于前后端分离架构的系统项目,运用数据库,将博客系统的账户与博客数据存储在云服务器上,前端实现主要由四个页面组成,分别是:登录页、博客列表页、博客详情页和博客编辑页,后端是对应实现的细节操作的接口,从而构成一个简易的博客系统的组成本次测试,按照功能测试,自动化测试,性能测试方面对博客系统进行了测试,全部通过结束语博客系统测试报告结束。
2025-08-23 20:59:37
999
原创 【Linux】进程间通信
进程间通信⽬的数据传输:⼀个进程需要将它的数据发送给另⼀个进程资源共享:多个进程之间共享同样的资源。通知事件:⼀个进程需要向另⼀个或⼀组进程发送消息,通知它(它们)发⽣了某种事件(如进程终⽌时要通知⽗进程)。进程控制:有些进程希望完全控制另⼀个进程的执⾏(如Debug进程),此时控制进程希望能够拦截另⼀个进程的所有陷⼊和异常,并能够及时知道它的状态改变。1.2 进程间通信发展管道System V进程间通信POSIX进程间通信1.3 进程间通信分类管道匿名管道pipe命名管道。
2025-08-16 21:38:18
881
原创 【Linux】库制作与原理
库是写好的现有的,成熟的,可以复⽤的代码。现实中每个程序都要依赖很多基础的底层库,不可能每个⼈的代码都从零开始,因此库的存在意义⾮同寻常。本质上来说库是⼀种可执⾏代码的⼆进制形式,可以被操作系统载⼊内存执⾏。静态库 .a[Linux]、.lib[windows]动态库 .so[Linux]、.dll[windows]静态链接的出现,提⾼了程序的模块化⽔平。对于⼀个⼤的项⽬,不同的⼈可以独⽴地测试和开发⾃⼰的模块。通过静态链接,⽣成最终的可执⾏⽂件。
2025-08-14 22:40:47
595
原创 【Linux】Ext系列文件系统
我们看到,真正找到磁盘上⽂件的并不是⽂件名,⽽是inode。其实在linux中可以让多个⽂件名对应于同⼀个inode。263466abc263466defabc和def的链接状态完全相同,他们被称为指向⽂件的硬链接。内核记录了这个连接数,inode 263466 的硬连接数为2。我们在删除⽂件时⼲了两件事情:1.在⽬录中将对应的记录删除,2.将硬连接数-1,如果为0,则将对应的磁盘释放。
2025-08-12 22:11:40
834
原创 【Linux】Linux环境基础开发工具
三种模式正常模式插入模式底行模式我们一共有12种总模式,大家下来可以研究一下vim操作打开,关闭,查看,查询,插入,删除,替换,撤销,复制等等操作。
2025-05-07 22:46:03
1142
原创 【Linux】Linux权限的认识
目录的可执行权限是表示你可否在目录下执行命令。如果目录没有-x权限,则无法对目录执行任何命令,甚至无法cd进入目即使目录仍然有-r读权限(这个地方很容易犯错,认为有读权限就可以进入目录读取目录下的文件)而如果目录具有-x权限,但没有-r权限,则用户可以执行命令,可以cd进入目录。但由于没有目录的读权限所以在目录下,即使可以执行ls命令,但仍然没有权限读出目录下的文档。结束语OK,关于linux权限的相关知识总结完毕,下个部分我们来认识下Linux常用的工具!!
2025-04-27 21:09:33
611
原创 【Linux】Linux下基本指令
前言学完C++基础知识,也实现了Linux的环境,接下来我们就正式迈入Linux的学习中,首先我们来看下一些Linux下的基础指令若有问题 评论区见📝。
2025-02-18 14:17:25
1363
原创 【C++】用哈希表封装myunordered_map和myunordered_set
前言本篇博客我们来用哈希表模拟实现一下STL库里的unordered_map与unordered_set若有问题 评论区见📝。
2024-12-20 22:28:55
771
原创 【C++】哈希表的实现
前言本篇博客我们来仔细了解下unordered_map与unordered_set的底层哈希表,哈希表到底是什么那,今天我们就来讨论清楚若有问题 评论区见📝。
2024-12-19 21:22:46
1102
原创 【C++】unordered_map与unordered_set使用
前言本篇博客我们来看一下unordered_map与unordered_set的使用,了解一下它们的原理若有问题 评论区见📝。
2024-12-07 20:17:16
931
1
原创 【C++】封装红黑树实现的map和set
源码及框架分析前言这篇博客我们将上篇博客实现的红黑树来封装成自己实现的set和map,来模拟一下库里的map和set若有问题 评论区见📝。
2024-12-01 20:04:02
1156
原创 【C++】AVL树
前言本篇博客我们来看一下特殊的搜索二叉树——AVL树,在认识红黑树之前,我们一起来看下AVL这类树有什么特性,以及代码实现若有问题 评论区见📝。
2024-10-25 21:55:15
1035
原创 【C++】map和set使用
set的声明如下,T就是set底层关键字的类型set默认要求T⽀持⼩于⽐较,如果不⽀持或者想按⾃⼰的需求⾛可以⾃⾏实现仿函数传给第⼆个模版参数set底层存储数据的内存是从空间配置器申请的,如果需要可以⾃⼰实现内存池,传给第三个参数。⼀般情况下,我们都不需要传后两个模版参数。set底层是⽤红⿊树(下一篇博客重点介绍)实现,增删查效率是OlogN) ,迭代器遍历是⾛的搜索树的中序,所以是有序的。
2024-10-14 22:59:40
1038
原创 【Linux】Linux环境的搭建
前言本篇开始我们搭配着C++认识一个新的“大陆”——Linux操作系统,这一篇我们先来了解一下Linux是什么,以及Linux如何搭建环境。
2024-09-21 17:41:21
1585
43
原创 【C++】多态
多态是⼀个继承关系的下的类对象,去调⽤同⼀函数,产⽣了不同的⾏为。⽐如Student继承了Person。Person对象买票全价,Student对象优惠买票。• 必须指针或者引⽤调⽤虚函数• 被调⽤的函数必须是虚函数。说明:要实现多态效果,第⼀必须是基类的指针或引⽤,因为只有基类的指针或引⽤才能既指向派⽣类对象;第⼆派⽣类必须对基类的虚函数重写/覆盖,重写或者覆盖了,派⽣类才能有不同的函数,多态的不同形态效果才能达到。
2024-09-16 18:02:44
2102
54
原创 【C++】继承
下⾯我们看到Person是⽗类,也称作基类。Student是⼦类,也称作派⽣类。(因为翻译的原因,所以既叫⽗类/⼦类,也叫⽗类/⼦类)
2024-09-07 18:38:16
949
3
原创 【C++】模版【进阶】
一个程序(项目)由若干个源文件共同实现,而每个源文件单独编译生成目标文件,最后将所有目标文件链接起来形成单一的可执行文件的过程称为分离编译模式。
2024-08-26 21:54:04
988
3
原创 【C++】STL——deque
deque(双端队列:是一种双开口的连续空间的数据结构,双开口的含义是:可以在头尾两端进行插入和删除操作,且时间复杂度为O(1),与vector比较,头插效率高,不需要搬移元素;与list比较,空间利用率比较高。deque并不是真正连续的空间,而是由一段段连续的小空间拼接而成的,实际deque类似于一个动态的二维数组,其底层结构如下图所示:双端队列底层是一段假象的连续空间,实际是分段连续的,为了维护其整体连续以及随机访问的假象,落在了deque的迭代器身上,因此。
2024-08-26 17:09:36
956
39
原创 【C++】STL——stack,queue
stack2.1 queue的介绍queue1.队列是一种容器适配器,专门用于在FIFO上下文先进先出中操作,其中从容器一端插入元素,另一端提取元素。2.队列作为容器适配器实现,容器适配器即将特定容器类封装作为其底层容器类,queue提供一组特定的成员函数来访问其元素。元素从队尾入队列,从队头出队列。3.底层容器可以是标准容器类模板之一,也可以是其他专门设计的容器类。该底层容器应至少支持以下操作empty:检测队列是否为空size:返回队列中有效元素的个数。
2024-08-19 16:56:35
1275
11
原创 【C++】内存管理
举个例子classApublicAinta0_aacout<<"A():"<<this<<endl;~A()cout<<"~A():"<<this<<endl;privateint_a;intmain()和最大区别是new/delete对于【自定义类型】除了开空间还会调用构造函数和析构函数Ap1AmallocsizeofA));Ap2newA1freep1deletep2;//
2024-07-30 20:48:44
1068
44
原创 【C++】类与对象(上)
•class为定义类的关键字,Stack为类的名字,{}中为类的主体,注意类定义结束时后⾯分号不能省略。类体中内容称为类的成员:类中的变量称为类的属性或成员变量;类中的函数称为类的⽅法或者成员函数。•为了区分成员变量,⼀般习惯上成员变量会加⼀个特殊标识,如成员变量前⾯或者后⾯加_ 或者 m开头,注意C++中这个并不是强制的,只是⼀些惯例,具体看公司的要求。•C++中struct也可以定义类,C++兼容C中struct的⽤法,同时struct升级成了类,明显的变化是。
2024-07-16 20:53:34
728
13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅