- 博客(7)
- 资源 (4)
- 收藏
- 关注
原创 【C++】尽可能使用const
请记住: 1. 将某些东西声明为const可帮助编译器侦测出错误用法。const 可被施加于任何作用域内的对象、函数参数、函数返回类型、成员函数本体。 2. 编译器强制实施bitwise constness,但编写程序时应该使用“概念上的常量性”。 3. 当 const 和 non-const 成员函数有着实质等价的实现时,令non-const 版本调用 const 版本可避免代码重复。
2017-04-30 18:04:51 1377 1
原创 预处理器、编译器、汇编、链接
预处理器(cpp)C/C++的预处理器是最低端的一种—–词法预处理器,主要是进行文本替换、宏展开、删除注释、把头文件内容包含进来这类简单工作。gcc -E选项可得到预处理后的结果,预处理结果会显示到屏幕上,如果需要保存,则得需要重定向,扩展名为 .i;C/C++预处理不做任何语法检查,不仅是因为它不具备语法检查功能,也因为预处理命令不属于C/C++语句(这也是定义宏时不要加分号的原因),语法检查
2017-04-30 12:28:46 1793 12
原创 西邮Linux兴趣小组2017纳新免试题揭秘
声明今年的免试题按照关卡顺序依次是由小组15级成员何攀、楚东方、宫展京、杜肖孟、王一妃同学精心准备的(鼓掌),每个人总结了一下自己负责关卡的解法,我这里整理了一下,给出一套完整的免试题详解。文末附上小组前几年的免试题详解,感兴趣的同学可以参考着玩一下。Let’s go!第一关免试题链接:点此进入 ,进去之后会有如下页面映入眼帘:首先,我们看到的是一段代码(运行结果是 11,代表着我们小组成立 11
2017-04-28 20:46:50 2810 2
转载 Redis 和 I/O 多路复用
最近在看 UNIX 网络编程并研究了一下 Redis 的实现,感觉 Redis 的源代码十分适合阅读和分析,其中 I/O 多路复用(mutiplexing)部分的实现非常干净和优雅,在这里想对这部分的内容进行简单的整理。几种 I/O 模型为什么 Redis 中要使用 I/O 多路复用这种技术呢?首先,Redis 是跑在单线程中的,所有的操作都是按照顺序线性执行的,但是由于读写操作等待用户输入或输出都
2017-04-16 16:21:00 4750 2
原创 进程间通信--管道、消息队列
我们学习高级进程通信,指用户可直接利用操作系统所提供的一组通信命令高效地传送大量数据的一种通信方式。 进程间通信的几种主要手段:管道、消息队列、共享内存、套接字管道管道,指用于连接一个读进程和一个写进程以实现它们之间通信的一个共享文件,只存在于内存中,是一种两个进程间进行单向通信的机制。在创建管道时,系统为管道分配一个页面作为数据缓冲区,通过管道通信的两个进程通过读写这个缓冲区来进程通信,写在缓冲
2017-04-16 13:42:11 1573 1
原创 安装net_speeder
net_speeder???同一份数据包发送两份。这样的话在服务器带宽充足情况下,丢包率会平方级降低。 直接优点是降低丢包率,直接缺点是耗费双倍流量。一些延伸影响是更容易触发快速恢复逻辑,避免了丢包时窗口缩减过快。一定程度也能提高网络速度。安装过程1:下载源码并解压wget https://github.com/snooda/net-speeder/archive/master.zipunzip
2017-04-05 14:00:26 893
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人