一.要以const,enum,inline来尽可能的代替#define 我们无法利用#define 创建一个class专属的常量,因为define并不重视作用域,也不能提供封装性 对于单纯变量,最好是以const对象或者enums来代替#define 对于形似函数的宏,最好使用inline函数来代替#define 定义常量指针,由于常量定义是通常被放在头文件内,因此有必要将指针声明为const ,... 作者:dream0130__ 发表于 2019/04/10 22:18:26 原文链接 https://blog.csdn.net/dream0130__/article/details/89196423 阅读:2 继续阅读 >>


吕海东 19/04/10 22:18:26
我的算法水平算是很差的那种。。这道题一开始自己想得办法一直都是超时,看了大牛们的思路之后,恍然大悟在此做一个总结 1.题目名称 Ugly Number II (丑数2:返回第n个丑数) 丑数即为由2,3,5作为质因子来组成的数 eg :1,2,3,4,5,6,8 2.说明 丑数具有如下的特征,1是一个特殊的丑数,丑数可以表示为有限个2,3,5的乘积 思路:丑数是由2,3,5的有限个乘积来进行组成,... 作者:dream0130__ 发表于 2019/03/25 20:07:51 原文链接 https://blog.csdn.net/dream0130__/article/details/88804720 阅读:23 继续阅读 >>


吕海东 19/03/25 20:07:51
我在学习listen函数的过程中,一开始对于backlog参数有股很模糊的理解,并不知道这个东西是干什么的,有什么用处? 在后面的学习中,查询了一些资料,在这里对于我自己理解的backlog参数做一个简单的整理,方便自己以后查阅. listen函数的回顾 backlog参数和TCP/IP协议有密切相关的联系 要了解backlog参数的作用,需要回到listen函数中来进行理解的. 首先我们... 作者:dream0130__ 发表于 2019/03/11 20:31:01 原文链接 https://blog.csdn.net/dream0130__/article/details/88408433 阅读:17 继续阅读 >>


吕海东 19/03/11 20:31:01
1.内核事件表 epoll是Linux特有的I/O复用函数,首先,epoll使用一组函数来完成任务,而不是单个函数.其次,epoll把用户关心的文件描述符上的事件放在内核里的一个事件表中,epoll需要使用一个额外的文件描述符,来唯一标识内核的这个事件表. #include<sys/epoll.h> int epoll_create(int size) size只是告诉内核,事件表需... 作者:dream0130__ 发表于 2019/02/27 14:47:59 原文链接 https://blog.csdn.net/dream0130__/article/details/87972851 阅读:16 继续阅读 >>


吕海东 19/02/27 14:47:59
上节我们对于两种事件处理模式做了简要的分析,在这里我们对于两种高效的并发编程方式来进行简单讨论,后序会继续完善 半同步/半异步方式 对于并发编程中的“同步"和"异步"是与I/O模型中的"同步"和"异步"是两种不同的概念 并发模式中,"同步"指的是程序完全按照代码序列的形式来执行的 -"异步"执行需要由系统事件来进行驱动 然而两种方法各有优缺点,异步线程虽然执行效率高,实施性很强,但是相对复杂. 作者:dream0130__ 发表于 2019/02/20 21:05:08 原文链接 https://blog.csdn.net/dream0130__/article/details/87822950 继续阅读 >>


吕海东 19/02/20 21:05:08
服务器程序通常需要处理三类事件:I/O事件,信号及定时事件. 在此简单介绍一下两种事件处理模式 : Reactor和Procator 首先我们需要明白同步I/O模型通常用于实现Reactor模式,异步I/O模型通常用于实现Procator模式 Reactor模式 它要求主线程只负责监听文件描述符上有没有事件发生,立即通知工作线程 读写数据等操作均由工作线程来进行完成 工作流程为 主线程往... 作者:dream0130__ 发表于 2019/02/19 21:19:29 原文链接 https://blog.csdn.net/dream0130__/article/details/87734971 阅读:38 继续阅读 >>


吕海东 19/02/19 21:19:29
首先,所有应用程序对于硬件的所有操作都必须通过操作系统来完成。 我们可以把操作系统理解为在硬件和应用程序之间插入的一层软件 操作系统由两个基本功能:(1)防止硬件被关注的应用程序滥用.(2)向应用程序提供简单一致的机制来控制复杂而又通常大不相同的第及硬件设备。操作系统通过几个基本的抽象概念(进程,虚拟内存和文件)来实现这几个功能,在本文中只讨论虚拟内存. 文件是对I/O设备的抽象表示,虚拟内存是... 作者:dream0130__ 发表于 2019/01/22 16:08:06 原文链接 https://blog.csdn.net/dream0130__/article/details/86596391 阅读:37 继续阅读 >>


吕海东 19/01/22 16:08:06
1.编辑 /etc/default/grub 2)修改GRUB_CMDLINE_LINUX_DEFAULT的值为nomodeset 3)更新grub: sudo update-grub 4)重启 2.进入grub界面后,按e键,进入编辑界面,这里可以进行编辑,没看到鼠标和指针光标?没关系,试着按下键盘的上下左右键就可以看见光标了 3.在倒数第二行中,roquiet splash 后面空格添加nom... 作者:dream0130__ 发表于 2018/11/15 21:52:51 原文链接 https://blog.csdn.net/dream0130__/article/details/84111610 阅读:394 继续阅读 >>


吕海东 18/11/15 21:52:51
My_chatting_room 项目文档 目录 引言 项目综述 术语表 参考资料 开发环境及使用工具 使用说明 数据结构说明 模块设计 程序函数调用图及模块分化 功能设计说明 文件说明 异常,错误处理 已经存在的问题及改善方案 运行截图 引言 项目综述 随着现代通信的发展,很多聊天工具都开始流行,在此趋势之上开始写的基于Linux平台下的聊天工具,目前已经实现了部分... 作者:dream0130__ 发表于 2018/09/08 15:39:30 原文链接 https://blog.csdn.net/dream0130__/article/details/82392284 阅读:191 继续阅读 >>


吕海东 18/09/08 15:39:30
一.动态规划的基本思想 动态规划(Dynamic Programming,简称DP),虽然抽象后进行求解的思路并不复杂,但具体的形式千差万别,找出问题的子结构以及通过子结构重新构造最优解的过程很难统一。 在做这些题之前,没有接触过任何关于动态规划的概念,所以写的很吃力,很难过 下去了解了一些关于动态规划的概念,在此做个记录和总结 动态规划的基本模型: 确定问题的决策对象 对决策... 作者:dream0130__ 发表于 2018/08/09 17:59:20 原文链接 https://blog.csdn.net/dream0130__/article/details/81534139 阅读:215 继续阅读 >>


吕海东 18/08/09 17:59:20