- 博客(15)
- 收藏
- 关注
原创 c++ speedup
static auto sppedup = [](){ ios::sync_with_stdio(false); cin.tie(nummptr); return nullptr; } ();转载自
2020-03-10 15:18:59
253
原创 vmrc
if v:lang =~ "utf8$" || v:lang =~ "UTF-8$" set fileencodings=ucs-bom,utf-8,latin1endifset nuset nocompatible " Use Vim defaults (much better!)set bs=indent,eol,start " allow backspacing over ...
2019-03-27 10:13:51
1050
转载 虚函数
转载自虚函数详解虚函数的作用:实现多态的机制,用夫类型的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数虚函数是通过一张虚函数表来实现的,表中主要有一个类的虚函数地址表,这张表解决了继承、覆盖的问题虚函数按照声明顺序放于虚函数表中,父类的虚函数在子类的虚函数前面每个父类都有一个虚函数表,一个子类继承多个父类的时候,子类的虚函数(无覆盖)放到第一个父类的虚函数表中安全性...
2019-03-23 17:28:23
203
原创 引用和指针的联系和区别
指针的优点能有有效的表示数据结构能够动态分配内存,实现内存的自由管理能够方便的使用字符串便捷高效的使用数组指针直接与数据的存储地址有关,速度快指针和引用的区别引用是别名,指针是地址指针运行时可以改变其所指向的值,引用绑定之后就不再改变程序为指针变量分配内存区域,但是不为引用分配内存区域符号表上面添加的是指针的地址和引用对象的地址,符号表一旦生成就不能改变,所以指针指向可变...
2019-03-21 16:52:56
329
转载 tcp拥塞控制和流量控制
流量控制流量控制:让发送方的发送速率不要太快,让接收方来得及接受数据。利用滑动窗口机制可以在tcp连接上实现对发送方的流量控制。滑动窗口单位是字节,不是报文段。连接中存在锁死的状态,为了解决这种状态,tcp为每一个连接设置了持续计时器,只要tcp连接的一方收到对方的零窗口通知,就开始计时,时间到期,就发送一个零窗口探测报文段,对方在确认这个探测报文段时给出了现在的窗口值。拥塞控制...
2019-03-13 11:24:03
251
原创 动态链接库和静态链接库
分类根据链接时期的不同,分为静态库和动态库静态库:在程序编译的时候被链接的,之后生成的可执行文件就不再受库的影响,即使将静态库删除。动态库:在程序执行的时候被链接的,程序运行时依然依赖动态库,所以动态库需要保留在系统上。区别静态库会造成系统空间的浪费,并且调试bug的时候比较麻烦动态库弥补了上述两个缺点...
2019-03-12 17:17:48
213
原创 tcp粘包现象
Nagle算法定义:任意时刻,最多只能有一个未被确认的小段(小于MSS尺寸的数据块)作用:用于自动连接许多的小缓冲器消息,通过减少必须发送包的个数来增加网络软件系统的效率优点:减少拥塞控制可通过TCP_NODELAY选项禁止Nagle算法粘包什么是粘包tcp粘包是指发送方发送的若干包数据到接收方接受时粘成一包,从接收缓冲去看,后一包数据的头紧接着前一包数据的尾。产生粘包的原因发...
2019-03-12 16:46:13
243
原创 unix网络编程 chapter1 and chapter2
简介bzero(&p, size); // 功能等效memset(&p, 0x00, size)inet_pton(AF_INET, input_str, &servaddr.sin_addr); // 地址转换,将点分十进制转换为正确格式,支持ipv6TCP本身并不提供记录结束标志,如果应用程序需要确定记录的边界,需要自己实现。...
2019-01-13 15:10:59
185
转载 c malloc分析
mallocvoid* malloc(size_t size);函数功能:在系统中分配一段连续的可用的内存malloc分配的内存大小至少为size指定的字节数malloc返回值为指针,指向一段可用内存的起始地址malloc分配的地址不能重叠,除非free掉相应地址...
2018-12-22 10:33:26
584
转载 C 嵌套宏使用
嵌套宏的展开规律一般展开规律为:先展开参数,再分析函数,由内向外展开当宏中有#运算符的时候,不展开参数当宏中有##运算符的时候,先展开函数,再分析参数##运算符用于将参数连接到一起,预处理过程把出现在##运算符两侧的参数合并成一个符号,注意不是字符串...
2018-12-20 11:01:50
1901
转载 C字节对齐
转载自https://www.cnblogs.com/clover-toeic/p/3853132.html结构体对齐准则结构体变量的首地址能够被其最宽基本类型成员的大小所整除结构体每个成员相对结构体首地址的偏移量都是成员大小的整数倍,如有需要编译器会在成员之间加上填充字节结构体的总大小为结构体最宽基本类型成员大小的整数倍,如有需要编译器会在最末一个成员之后加上填充字节...
2018-12-10 22:18:00
213
原创 C++ Primer Plus chapter 3
1.简单变量1.1 变量名C++对于变量名的长度没有限制C只保证名称中的前63个字符有意义,即变量名最长为631.2 初始化如果不对定义的变量进行初始化,该变量的值是不确定的,为创建之前,相应内存单元保存的值C++11初始化方式使用大括号初始化器,等号可有可无,大括号内为空表示置零int hamburgers = {24}; // set hamburgers to...
2018-12-03 23:00:13
167
原创 C++ Primer Plus chapter 2
第二章1.main函数int main(void)在括号中使用void明确地指出,函数不接受任何参数C++中,空括号和使用void等效C中,空括号意味着对是否接受参数保持沉默2.注释C++标准使用//作为注释符号C标准使用/* */作为注释符号3.名称空间大型项目中可使用如下方式来使用名称空间中的方法using std::cout; // make c...
2018-11-22 22:37:03
231
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人