![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
文章平均质量分 68
事多做话少说
这个作者很懒,什么都没留下…
展开
-
【项目优化】 用跳表实现timer
对C++选手烂大街的项目Webserver进行局部优化,将定时器模块(定期处理非活跃连接)由小根堆实现更改为用跳表实现,克服了用小根堆实现定时器的一些弊端。每一个客户端与服务器建立好连接后,为该连接创建定时器,经过一段时间后,若客户端没有与服务器进行通信,服务器则认为其为非活跃连接,将这个连接删除,以便其他客户端接入。定期检测(心跳)非活跃的连接,将这些非活跃的连接清除。若用户在被清除前与服务端进行交互(读写),延长该节点的超时时间(因为是活跃用户)。原创 2023-06-29 14:09:20 · 313 阅读 · 0 评论 -
C++代码规范
本文针对笔者目前刷题以及面试需求对C++代码规范进行简要梳理总结。实习和工作过程中必然会有更多涉及工程的规范要求,后续会跟进,不包含在本文中。本文参考知乎用户。原创 2023-03-12 11:59:15 · 140 阅读 · 0 评论 -
【菜鸟教程】 C++学习笔记
创建枚举若枚举没有初始化,即没有 “[=整型常数]” ,则从第一个标识符开始。例如,下面的代码定义了一个颜色枚举,变量 c 的类型为 color。最后,c 被赋值为 “blue”。默认情况下,第一个名称的值为 0,第二个名称的值为 1,第三个名称的值为 2,以此类推。但是,您也可以给名称赋予一个特殊的值,只需要添加一个初始值即可。例如,在下面的枚举中,green 的值为 5。在这里,blue 的值为 6,因为默认情况下,每个名称都会比它前面一个名称大 1,但 red 的值依然为 0。变量声明向编译器原创 2022-07-31 17:14:50 · 475 阅读 · 0 评论 -
【C++学习笔记】(2)内存管理
结构体中const使用。如果结构体数量很大或者使用结构体数组,每次把结构体当成形参传入函数后会申请大量的内存,此时使用指针作为形参传入显然开销更低,但是可能会更改原来结构体中元素的值,此时使用const可以保证被修饰的结构体对象不被更改,状态为只可读、不可写。...原创 2022-04-21 16:48:42 · 123 阅读 · 0 评论 -
【C++学习笔记】(1)常量指针和指针常量
目录1.常量指针定义:代码形式举例说明2.指针常量定义代码形式举例说明1.常量指针定义:又叫常指针,可以理解为常量的指针,即指向常量的指针,这里的常量是指针指向内存中保存的值,所以常量指针指向的内存中存放的值不能由这个指针修改。代码形式int const *p;const int *p;举例说明int a = 10;int b = 10;int const *p = &a;*p = 20; //不可行,常量指针指向的内存中的值不能由该指针进行修改p = &b; /原创 2022-04-15 21:39:50 · 354 阅读 · 0 评论