自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

原创 硬链接和软链接的区别

硬链接和软链接的用途也不同。硬链接通常用于在不同的目录中创建相同文件的多个副本,以节省存储空间。创建硬链接和软链接的方法不同。在Linux系统中,可以使用ln命令来创建硬链接和软链接。创建硬链接时,需要使用-l选项,而创建软链接时,需要使用-s选项。硬链接和软链接的文件名的颜色也不同。在Linux系统中,硬链接的文件名通常是白色的,而软链接的文件名则是蓝色的。硬链接和软链接的大小也不同。硬链接的大小与原始文件的大小相同,而软链接的大小则是指向另一个文件路径的大小。

2023-09-11 09:46:53 76

原创 说说构造函数有几种,分别什么作用

在定义类的对象的时候,完成对象的初始化工作。

2023-09-05 14:16:22 199

原创 简述一下 C++ 的重载和重写,以及它们的区别

函数重载是指同一可访问区内被声明的几个具有不同参数列(参数的类型,个数,顺序不同)的同名函数,根据参数列表确定调用哪个函数,重载不关心函数返回类型。函数名,参数列表,返回值类型,所有都必须同基类中被重写的函数一致,只有函数体不同。

2023-09-05 10:51:44 53

原创 简述一下什么是面向对象?和三大特征

面向对象是一种编程思想把一切东西看成是一个个对象,比如人、耳机、鼠标、水杯等,他们各自都有属性,比如:耳机是白色的,鼠标是黑色的,水杯是圆柱形的等等,把这些对象拥有的属性变量和操作这些属性变量的函数打包成一个类来表示。

2023-09-05 10:22:47 49

原创 说一下一次完整的HTTP请求过程包括哪些内容?

域名解析:使用DNS协议进行域名解析三次握手建立TCP连接后发起HTTP请求服务器响应HTTP请求,浏览器得到HTML代码浏览器解析HTML代码,并请求其他的资源浏览器对页面进行渲染呈现给用户四次挥手

2023-09-04 19:47:20 19

原创 堆和栈的区别

内存分配方式栈是由程序自动创建和释放的,通常用于存储函数调用时的临时变量、函数的返回地址等信息。而堆则是由程序员手动申请和释放的,通常用于存储程序中需要动态分配的内存(如动态数组、对象等)。内存大小栈的容量较小,一般只有几百KB到几MB的空间,具体容量由操作系统和编译器决定。相对而言,堆用于存储较大的数据结构,大小一般比栈要大得多,可以动态扩展内存空间。访问速度因为栈的内存分配是系统自动完成的,所以访问速度相对堆更快。栈中的数据直接存放在系统内存中,而访问堆中的数据需要通过指针进行间接访问,会造

2023-09-04 14:31:40 24

原创 说说new和malloc的区别,各自底层实现原理。

new是操作符,而malloc是库函数。new在调用的时候先分配内存,在调用构造函数,释放的时候调用析构函数;而malloc没有构造函数和析构函数。malloc需要给定申请内存的大小,new无需显式填入申请的内存大小,new会根据new的类型分配内存。new操作符分配的内存空间是在自由存储区,malloc申请的内存是在堆空间。new操作符内存分配成功时,返回的是对象类型的指针,类型严格与对象匹配,无须进行类型转换,故new是符合类型安全性的操作符。而malloc内存分配成功则是返回void * ,

2023-09-04 13:58:13 54 1

原创 c++中static的作用

修饰全局变量时,表明一个全局变量只对定义在同一文件中的函数可见。修饰局部变量时,表明该变量的值不会因为函数终止而丢失。修饰函数时,表明该函数只在同一文件中调用。修饰类的成员变量:1.所有的对象共享一份数据2.在编译阶段分配内存3.类内声明,类外初始化修饰类的成员函数:1.所有对象共享一个函数2.静态成员函数只能访问静态成员变量

2023-09-04 13:37:35 20 1

原创 c++内存对齐

内存对齐:是计算机对数据类型合法地址做出了一些限制,要求某种类型对象的地址必须是某个值K(通常使2、4、8、16、32或64)的倍数。

2023-09-04 10:58:44 34 1

原创 内存泄露及解决办法

简单地说就是申请了一块内存空间,使用完毕后没有释放掉具体来讲,内存泄漏是由于在程序中通过malloc或者new从堆中申请了一块空间,但是在使用后并没有调用free或者delete释放,导致这块空间既无法使用也无人回收,从而造成了内存泄漏。内存泄漏,是指在程序代码中动态申请的、堆上的内存 由于某种原因、在使用后没有被释放,进而造成内存的浪费。

2023-09-04 10:17:06 57 1

原创 c++内存管理

堆由程序员分配和释放, 若程序员不释放,程序结束时可能由OS回收 。栈由编译器自动分配释放 ,存放函数的参数值,局部变量等。函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。代码区用于存放函数体的(二进制)代码全局/静态存储区存放全局变量和静态变量,被分配到同一块内存中,在以前的C语言中,全局变量又分为初始化的和未初始化的,在C++里面没有这个区分了,他们共同占用同一块内存区。内存在程序编译的时候就已经分配好,这块内存在程序的整个运

2023-09-04 09:51:45 33 1

原创 导入C函数的关键字是什么,C++编译时和C有什么不同?

关键字:在C++中,导入C函数的关键字是extern,表达形式为extern “C”, extern "C"的主要作用就是为了能够正确实现C++代码调用其他C语言代码。加上extern "C"后,会指示编译器这部分代码按C语言的进行编译,而不是C++的。编译区别:由于C++支持函数重载,因此编译器编译函数的过程中会将函数的参数类型也加到编译后的代码中,而不仅仅是函数名;而C语言并不支持函数重载,因此编译C语言代码的函数时不会带上函数的参数类型,一般只包括函数名。

2023-09-04 09:10:47 62 1

原创 说说 C++中 struct 和 class 的区别//c中的struct和c++中的struct的区别

说说 C++中 struct 和 class 的区别struct 的默认访问权限是public,而class是private。struct 的默认继承权限是public,而class是private。class关键字可以用来定义用户模板参数,就像typename,而struct不能。c中的struct和c++中的struct的区别

2023-09-04 09:07:57 28 1

原创 vector(向量)

简单地说,vector是一个能够存放任意类型的动态数组。vector 容器的行为类似于数组,但可以根据要求自动增长。它可以随机访问、连续存储,长度也非常灵活。vector数据结构和数组非常相似,也称为单端数组。vector拥有一段连续的内存空间,因此支持随机访问,如果需要高效的随即访问,而不在乎插入和删除的效率,使用vector。vector底层数据结构为数组,支持快速随机访问。

2023-08-23 15:19:00 140 1

原创 mysql(事物)

事务是一组操作的集合,事务会把所有操作作为一个整体一起向系统提交或撤销操作请求,即这些操作要么同时成功,要么同时失败。

2023-08-23 15:17:54 20 1

原创 mysql--(索引)

总结:在查询时使用了二级索引,如果查询的数据能在二级索引里查询的到,那么就不需要回表,这个过程就是覆盖索引。如果查询的数据不在二级索引里,就会先检索二级索引,找到对应的叶子节点,获取到主键值后,然后再检索主键索引,就能查询到数据了,这个过程就是回表。主键索引:一张表最多只有一个主键索引,索引列的值不允许有空值唯一索引:一张表可以有多个唯一索引,索引列的值必须唯一,但是允许有空值。普通索引:就是建立在普通字段上的索引,既不要求字段为主键,也不要求字段为 UNIQUE前缀索引:是指对字符类型字段的前几个字

2023-08-23 15:16:42 16 1

原创 内连接、外连接与自连接

【代码】内连接、外连接与自连接。

2023-08-23 15:14:19 97 1

原创 TCP与UDP的区别

TCP 面向连接(如打电话要先拨号建立连接)提供可靠的服务,也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP 是无连接的,即发送数据之前不需要建立连接,UDP 尽最大努力交付,即不保证可靠交付UDP 具有较好的实时性,适用于高速传输和对实时性有较高的通信或广播通信,TCP传输速度慢,主要适用于传输效率要求相对低,但对准确性要求相对高和要求可靠传输的应用。每一条 TCP 连接只能是一对一的,UDP 支持一对一,一对多,多对一和多对多的交互通信。TCP 面向字节流,实际上是

2023-08-22 19:03:47 16 1

原创 内联函数(c++)

在函数声明或者定义的时候,以关键字。的调用,此时会使用内联函数。修饰的函数就叫做内联函数。

2023-08-19 19:34:27 27

原创 动态库和静态库

这类库的名字一般是libxxx.so;相对于静态函数库,动态函数库在编译的时候 并没有被编译进目标代码中,你的程序执行到相关函数时才调用该函数库里的相应函数,因此动态函数库所产生的可执行文件比较小。:这类库的名字一般是libxxx.a,利用静态函数库编译成的文件比较大,因为整个函数库的所有数据都会被整合进目标代码中,他的优点就显而易见了。

2023-08-19 18:34:09 23

原创 内连接与外连接

外连接与内连接

2023-08-07 16:30:41 46 1

原创 Linux 高并发服务器

Web服务器要为用户提供服务,必须以某种方式,工作在某个套接字上。一般Web服务器在处理用户请求时,一般有如下三种方式可选择:多进程方式、多线程方式、异步方式。

2023-08-07 11:04:21 124 1

原创 深拷贝与浅拷贝

深拷贝与浅拷贝

2023-03-09 20:03:17 13

原创 c++类和对象

构造函数和析构函数

2023-03-09 17:26:34 17

原创 c++引用

引用

2023-03-07 20:09:49 23

原创 学习C++

内存分区

2023-03-07 15:14:10 15

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除