- 博客(79)
- 收藏
- 关注
原创 Qt之信号与槽
1.在 Qt 中,⽤⼾和控件的每次交互过程称为⼀个事件,每个事件都会发出⼀个信号,Qt 中的所有控件都具有接收信号的能⼒,⼀个控件还可以接收多个不同的信号。对于接收到的每个信号,控件都会做出相应的响应动作,在 Qt 中,对信号做出的响应动作就称之为槽。
2024-08-14 21:06:37 632
原创 与Qt初识
.Qt 是⼀个 跨平台的 C++ 图形⽤⼾界⾯应⽤程序框架 。它为应⽤程序开发者提供了建⽴艺术级图形界⾯所需的所有功能。它是完全⾯向对象的,很容易扩展。
2024-08-08 21:24:34 896
原创 数据结构中的八大金刚--------八大排序算法
InsertSort(直接插入排序) ShellSort(希尔排序) BubbleSort(冒泡排序) HeapSort(堆排序) SelectSort(直接选择排序) QuickSort(快速排序) MergeSort(归并排序) CountSort(计数排序)
2024-07-23 18:59:59 845
原创 Linux修炼之路之进程概念,fork函数,进程状态
PCB是在操作系统中定义的struct结构体类型。当加载进程的时候,本质上不仅仅是把对应的数据和代码加载到内存,而且操作系统会根据描述该进程的PCB类型为当前进程创建对应的PCB对象,把该进程的相关属性值填充完成初始化。这个PCB结构体变量是由操作系统自己形成的。
2024-07-02 20:12:29 809 1
原创 Linux修炼之路之冯系结构,操作系统
我们当代的计算机的基本构成都是由冯诺依曼体系结构来进行构成计算机的基本单元,所以计算机就是由一个个的硬件组成的
2024-05-25 18:30:21 809 7
原创 Linux修炼之路之权限
粘滞位的产生主要来解决由于共享文件而造成的可以互删共享文件问题,但对于这个问题如果只是简单的去掉共享目录的w权限的话,也可以避免删除的问题,但此时我们也就无法再创建文件这些了,所以产生了粘滞位来解决
2024-05-13 11:56:53 1039 5
原创 Linux修炼之路之基础指令(2)+shell命令及运行原理
我们所有的指令,最终都要在操作系统内部运行,但是使用操作系统的难度高,因此我们用户不能直接和操作系统打交道,这时就需要借用 图形化界面/命令行解释器,来帮助我们完成这个复杂的过程
2024-05-12 10:19:29 703 6
原创 Linux修炼之路之初识操作系统+基础指令(1)
对于操作系统这个词,我们是耳熟能详的,常见的如windows,Linux,Android,ios等,都是属于操作系统的,那么操作系统是个啥呢,接下来我们就先简单了解下,再了解掌握一些Linux的基础指令
2024-05-10 23:04:06 801 4
原创 C++修炼之路之多态--多态的条件与例外,重载+重写+重定义
对于面向对象的三大特性封装,继承和多态,封装和继承在前面已经介绍了,对于多态简单来说就是多种形态,就是当不同的对象去完成同一个行为时,产生的结果不同,他的实现是基于继承的基础上来完成的,但对于一些细节要格外关注注意
2024-04-20 23:30:59 1158 4
原创 C++修炼之路之继承<一>隐藏,赋值转换规则,继承关系
面向对象的三大特性为封装,继承和多态,对于封装在类与对象中介绍过,它其实就是通过封装底层的复杂实现机制,给我们展现出一个简单快捷方便的使用方式,如迭代器的使用,接下来我们将介绍第二大特性:继承
2024-04-19 18:21:42 750 6
原创 C++修炼之路之反向迭代器和非模板参数,模板特化,分离编译
在vector,list,deque等容器中还有反向迭代器来遍历数据,但对于反向迭代器的实现较为复杂,在模板中也还有一些深入了解的知识,如模板的特化,非模板参数和分离编译
2024-04-18 22:06:34 1109 4
原创 C++修炼之路之STL_stack,queue和容器适配器
在经过数据结构的栈和队列的了解后,在c++的STL中也实现了栈和队列,相对于数据结构部分的栈和队列,在c++中栈和队列的底层实现结构中加入了容器适配器的知识,使其可以更好的复用list和vector中的操作来模拟实现栈和队列
2024-04-17 23:35:20 1019 5
原创 C++修炼之路之list模拟实现--C++中的双向循环链表
在前面的数据结构中已经实现了c版本的list-双向循环链表,但在c++中注重的是分装,对于操作进行封装处理,对于我们使用便是方便了不少,但模拟实现的话还是有许多要注意的细节点,尤其是list的迭代器较复杂,需要认真理解
2024-04-15 21:59:56 1136 5
原创 C++修炼之路之list--C++中的双向循环链表
list简单来说就是数据结构中的双向循环链表,作为链表中的顶级结构,双向循环链表的任意位置插入删除数据效率高,而且不用像单链表那样分情况来讨论插入删除的情况,在C++中经过封装变为了常用的list
2024-04-15 18:19:38 653 1
原创 c++修炼之路之vector模拟实现
在了解标准库中的vector之后,对于模拟实现vecor的各接口函数常常是面试时的重难点,在模拟实现vector的过程中主要有迭代器失效的问题,在模拟实现的vectro中是使用三指针来模拟实现vector的
2024-04-14 21:23:51 846 2
原创 c++修炼之路之vector--标准库中的vector
vector是表示一个可变大小的数组的容器,就和数组,顺序表一样,使用连续的空间来存储数据,访问数据,它的使用更加方便高效
2024-04-14 17:42:02 363 5
原创 算法修炼之路之双指针
在解决关于数组的问题时,常常用到双指针的解决方法来优化算法,帮助解决问题,常见的双指针分为普通双指针,快慢指针,左右相遇指针等
2024-04-12 21:14:37 499
原创 C++修炼之路之string模拟实现
介绍关于模拟实现一个string类,去更深层次的了解标准库中string的实现,帮助我们更加了解string类,提升代码能力
2024-04-10 22:09:02 1327
原创 C++修炼之路之string--标准库中的string
在日常中我们常常会使用字符串来表示一些数据,而在C语言中,字符串是以'\0'结尾的字符的集合,关于字符串的操作在c语言中有着各种str系列的库函数来处理字符串,但有时会因为误用而造成错误,且库函数多不易记住各库函数的的具体操作,因此在c++中提出了string类来解决各种字符串操作
2024-04-09 15:23:00 1155
原创 C++修炼之路之模板与STL简介
在比如写一个交换函数时,由于交换数据的类型不同,可能要写出很多个交换函数,在c++可以使用函数重载来实现,但如果数据类型多的话,要写的重载函数多,代码的复用率不好,可维护性差,这样在c++中就提出了使用模板来解决这个问题
2024-04-08 19:38:40 375
原创 C++内存管理new-delete大法及实现原理
在C/C++中,对于要开辟和释放动态的内存空间,在C语言中常常使用malloc,calloc,realloc,free四大函数来完成,而在C++中就会使用new和delete来完成动态内存空间的申请释放,而C++兼容C语言所以也可以使用四大函数,但注意free和delete不能混着用,尽量匹配使用的
2024-04-08 17:50:28 1115
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人