- 博客(24)
- 收藏
- 关注
原创 密码学+加解密封装
ssl是Secure Sockets Layer(安全套接层协议)的缩写,可以在Intemet上提供秘密性传输Netscape公司在推出第一个Web浏览器的同时,提出了SSL协议标准。7、包含头文件加的openssl表示子目录,如果你前面配置的include文件的目录时候,openssl的文件是在include文件里面的文件。前面说MD5是16字节,这个的输出结果是16进制字符串的形式,每个字符都转换成16进制的格式再显示出来,两个16进制位占1个字节。),包括主要的密码算法、常用的密钥(
2024-10-27 11:59:13
1385
原创 c++编解码封装
上面这个案例并没有满足需求,假设子类又多了一个,又要在工厂类进行添加---->这是改原来写好的代码。工厂模式的作用是用来创建对象的,那么创建对象的工作实际上是交给了某一个去做。简单工厂:把对象的创建放到一个工厂类中,通过参数来创建不同的对象。工厂: 使用一个单独的类来做创建实例的过程, 这就是工厂。工厂方法:每种产品由一种工厂来创建,一个工厂保存一个new。这样就不需要修改原来的代码,只需要添加新的子类就行了。特点:基本完美,完全遵循 “不改代码”的原则。
2024-10-26 17:29:48
656
原创 c++设计通信类
客户端每隔1s给服务器发送一条数据, 每条数据长度 100字节 , 服务器每隔2s接收一次数据。处理思路:服务器端不负责通信只负责监听,如果通信使用客户端类。Posix 定义了与 select/epoll 和。问题1:这个类不能用,因为只能和一个客户端进行连接。(连接建立时,写缓冲区空闲,所以可写)(由于有未决的错误,从而可读又可写)问题2:服务器端和客户端的代码冗余。,socket 文件描述符变为。,socket 文件描述符。连接过程中写缓冲区不可用。
2024-10-24 17:42:51
390
原创 密钥协商客户端和服务器流程
密钥协商(生成密钥的过程):对数据进行加密的是,加密的数据长度没有限制,密钥分发分发困难,对密钥分发用的是。密钥校验:验证双发使用的密钥是不是同一个。密钥注销:将当前密钥废弃掉。
2024-10-24 10:01:38
1231
原创 Jsoncpp
尽管 append 接收的是 const Value&,传入的 12(int)并不会直接和引用绑定。C++ 首先会创建一个 Json::Value 类型的临时对象,然后引用绑定到这个临时对象上。因为该引用是 const,它可以安全地绑定到临时对象,这使得隐式类型转换成为可能。
2024-10-23 17:39:29
282
1
原创 uml类图
关联关系是类与类之间最常见的一种关系,它是一种结构化的关系,表示一类对象与另一类对象之间有联系,如汽车和轮胎、师傅和徒弟、班级和学生等。在UML类图中,用实线连接有关联关系的对象所对应的类,在C++中通常将一个类的对象作为另一个类的成员变量。关联关系分单向关联、双向关联、自关联,逐一看一下。
2024-10-22 10:44:29
820
原创 网络编程高并发
mac地址6个字节 48位标识网卡的id,理论上这个id全球唯一mac地址一般用来标识主机的id,这个id是物理地址,不会改变。IP地址(ipv4)4个字节 32位如果是ipv6 16个字节 128位IP地址标识主机的ID,这个id是虚拟的是会改变的。IP地址是一种 Internet上的主机编址方式,也称为网际协议地址。IP地址是组成:使用32bit,由{子网 ID,主机 ID}两部分组成。子网ID:IP地址中由子网掩码中1覆盖的连续位。
2024-09-25 21:06:59
1246
原创 linux系统编程
我们平时写的 C 语言代码,通过编译器编译,最终它会成为一个可执行程序,当这个可执行程序运行起来后(没有结束之前),它就成为了一个进程。,而进程是程序执行的过程。进程的状态是变化的,其包括进程的创建、调度和消亡。程序是静态的,进程是动态的。在 Linux 系统中,操作系统是通过进程去完成一个一个的任务,进程是管理事务的基本单元。此外进程拥有自己独立的处理环境。
2024-09-19 22:23:18
1118
原创 linux
如果命令中不包含输出可执行文件的文件名,可执行文件的文件名会自动生成一个默认名,Linux平台为a.out,Windows平台为a.exe。tar -tvf sysctl.tar 查询压缩包里面的文件(场景:当遇到大的压缩包的时候 如果里面的文件不需要则先用这个查看)用户只需要更新动态库即可,增量更新。tar只负责打包文件,但不压缩,用gzip压缩tar打包后的文件,其扩展名一般用xxxx.tar.gz。如果通过vi打开一个已经存在的文件,首先进入命令模式,此时输入的任何字符都被视为命令,不能输入内容。
2024-09-15 21:11:24
1007
原创 数据结构代码题合集
用顺序表最后一个元素覆盖整个顺序表中最小元素,并返回该最小元素将顺序表的元素逆置将a1,a2,a3……am b1,b2,b3……bn转换成b1,b2,b3……bn a1,a2,a3……am删除顺序表中所有值为x的元素从顺序表中删除给定值再s到t之间(包括s和t)的所有元素删除有序表中所有值重复的元素删除有序表中所有值重复的元素将两个递增有序表 合并为 一个递增有序表求两个递增序列的中位数设计一个时间上尽可能高效的算法,找出数组中未出现的最小正整数若一个整数序列中有过半
2024-04-12 09:32:22
781
原创 基于qt和http的MP3音乐播放器引擎开发
您可以在部件的绘制区域上绘制任何您想要的内容,以实现自定义的绘制效果。总的来说,QMainWindow 用于创建主窗口应用程序,QDialog 用于创建对话框窗口,而 QWidget 则是所有用户界面组件的基类,可以用于创建各种自定义的用户界面元素。在这段代码中,滑动条轨道和滑块的样式设置是相同的,都是蓝色边框和蓝色背景,而滑块使用了径向渐变作为背景。它会影响按钮在鼠标悬停时的外观。QSlider::handle:horizontal: 这部分定义了滑块的样式,包括背景渐变、宽度、边框半径以及上下的边距。
2024-03-13 21:21:22
1909
原创 STL容器
STL大体分为六大组件,分别是:容器、算法、迭代器、仿函数、适配器(配接器)、空间配置器1.容器:各种数据结构,如vector、list、deque、set、map等,用来存放数据。2.算法:各种常用的算法,如sort、find、copy、for_each等3.迭代器:扮演了容器与算法之间的胶合剂。4.仿函数:行为类似函数,可作为算法的某种策略。5.适配器:一种用来修饰容器或者仿函数或迭代器接口的东西。6.空间配置器:负责空间的配置与管理。容器:置物之所也STL容器就是将运用最广泛的一些数据
2023-06-10 15:22:38
998
原创 c++面向对象的三大特征
1.引用是做什么:和C语言的指针一样的功能,并且使语法更加简洁2.引用是什么∶引用是给空间取别名这里第二次用指针进行交换为20 10 再用引用就是10 20 没什么问题作用:引用是可以作为函数的返回值存在的注意:不要返回局部变量引用用法:函数调用作为左值在 test01() 函数中,确实有一个 int a = 10; 的局部变量,然后函数返回了对这个局部变量的引用。问题出在这里:1、当函数执行完毕并返回时,局部变量 a 的生命周期结束,其内存空间被释放。引用实际上指向了一个不再存在的
2023-05-22 09:14:53
688
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人