- 博客(39)
- 收藏
- 关注
原创 c++ 命名空间、三大特征以及封装性
相似于 c 语言的结构体,但存在以下区别:1、含有作用域限定符2、含有函数,也就是类的自身行为(类方法)class Apublic: // 若不添加,默认是 privateint a;private:// 类方法:类中的函数int main()A a1;a1.a = 10;a1.show();// 通过类产生的对象来调用方法return 0;
2024-11-05 15:17:28
735
原创 c 到 c++ 过渡
函数重载时,调用函数是在编译期间就确定了具体的调用对象,因此将函数重载叫做静态联编。概念:给一个已有的对象(变量)取别名。本质就是同一个函数名有不同的版本。1、函数名、函数参数列表完全一致。4、普通指针与常目标指针。2、函数返回值类型差异。型变量(包括常指针)
2024-11-02 12:00:05
471
原创 网络编程-TCP
端口号:2字节的短整型(1~65535)自己写的程序中端口号一般设置大于10000即可,用于区分应用。体系下,操作系统一般是小端存储模式,对于网络通信一般是大端存储模式。:主要是数据发送数据时,若出现数据发送失败,可控制进行重新发送。:套接字,特殊的文件描述符,不允许使用。2、网络通信模型:七层模型、四层模型。地址都是32位的点分式,用于区分设备。(局域网)不同设备在通信时,要求其。(传输控制协议\因特网互联协议)6、网络的广播、组播、单播。地址必须处于同一网段。
2024-09-29 08:44:27
832
原创 Linux线程
独属于进程的东西进程间不可以共享,例如全局变量、静态局部变量,独属于线程的东西,线程不可以共享;不属于进程的东西可以共享,例如文件;单线程进程内部线程拥有一整套资源,多线程进程内部线程则共享一套资源;使用多线程就是为了提高效率。局部变量可以通过线程创建时的第四个参数进行传递,传递后两进程可以共享这一变量;
2024-09-27 10:22:31
536
原创 进程间通信-IPC
共享内存数据被读取后依旧存在,后续课重复读取共享内存类似于文件操作,效率更高IPC_RMID是标记“即将删除”,就是预删除消息队列数据一旦被读取就会从消息队列消失,未读取则继续存在消息队列中消息队列是增强型管道,多个进程同时向消息队列中写入数据时,消息队列中类似于多条管道存在一样IPC_RMID将会立即删除消息队列。
2024-09-23 11:01:17
740
原创 进程间通信-管道
FIFO和PIPE最大的区别就是FIFO具有写入原子性的特点。(典型案例:Linux日志系统,多个进程向管道写入,再通过一个进程来读取管道内容,就可以解决多个进程向同一文件写入内容)管道文件的内容和水流一样,只能读取一次,读完之后就会消失。
2024-09-14 11:07:40
657
原创 Linux进程相关知识
进程与程序区别WindosexeLinuxELF`ELF`格式文件类型:可执行文件、可重定位文件、共享目标文件、核心转储文件`readelf -h a.out`:查看可执行文件头部信息(文件创建之初就装有本身的相关属性,不仅仅只有可执行代码)`task_struct`:对于进程来说比较重要的结构体,目前最大的结构体,包含所有进程信息进程组织形式init。
2024-09-13 11:39:50
997
原创 IO相关知识
Windows中的文件夹就是“套娃”,文件夹里面的内容一定比文件夹本身空间小;而Linux中的目录就是变相的文件,没有大小层级关系,内部可以看作保存着其他文件的名称(地址)。==能够使用标准IO的情况下不要使用系统IO;能够使用标准IO就一定可以使用系统IO,能使用系统IO不一定可以使用标准IO;内核层:进程管理系统(进程调度、进程管理)、内存管理系统、驱动。c: 字符设备文件(character)p: 管道文件(命令管道)(pipe)l: 链接文件(软链接)(link)b: 块设备文件(block)
2024-09-12 08:45:44
717
原创 工程管理-Makefile
Linux的make程序用来自动化编译大型源码,(Unix/Linux自带make,可直接使用)我们在Linux下编译安装软件,只需要 敲一个make就可以全自动完成,非常方便。make能自动化完成这些工作,因为项目提供了一个Makefile文件,它负责告诉 make ,应该如何编译和链接程序。Makefile相当于Java项目的pom.xml,Node工程的,Rust项目的Cargo.toml。
2024-09-06 15:48:13
1160
原创 c-数据结构(二叉搜索树)
一组数据中除第一个节点(第一个节点称为根节 点,没有直接前驱节点)之外,其余任意节点有且仅有一个直接前驱,有零个或多个直接后继,这样的一组数据形成一棵树。有序树和无序树:若某个节点的子节点是有次序的,则是有序树,否则反之。节点的层次(level):根节点所在层次规定为1层,依次后推。父节点(parent):某节点的直接前驱就是该节点的父节点。子节点(child):某节点的直接后继就是该节点的子节点。节点的度(degree):一个结点拥有的子节点个数。树的高度(height):树中节点的最大层次。
2024-09-02 08:38:08
713
原创 c-数据结构(栈和队列)
栈:只能在固定的一端进行操作;入栈(压栈):将节点插入栈顶之上。出栈(弹栈):将节点从栈顶剔除。栈顶:可以进行插入删除的一端。出队:将队头节点从队列中剔除。入队:将节点插入到队尾之后。队头:可以删除节点的一端。队尾:可以插入节点的一端。
2024-09-01 10:50:29
533
原创 c-数据结构(顺序表、链表)
属于线性表,数据之间的空间是连续,如具名的栈数组,匿名的堆数组。对于n各元素的线性表,严格数学定义:其中任意一个数据元素。属于线性表,数据之间的空间不连续(离散),如结构体。数据节点较多时,无需整片连续空间,可利用离散内存;无需多余信息来记录数据间关系,数据存储密度高;数据节点数量变化剧烈,内存的释放和分配不灵活;节点变化剧烈时,内存的分配和释放灵活、速度快;插入删除数据时,需要成片移动数据,很不方便;数据节点较多时,需要一整片较大连续空间;插入删除数据仅需调整几个指针,较为便捷;
2024-08-31 11:56:14
1351
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1