c++
YoungSusie
这个作者很懒,什么都没留下…
展开
-
c++编译链接模型精要
分类 c++ 语言的三大约束是:与 c 兼容、零开销原则、值语义。与 C 兼容除了语法兼容,更重要的是兼容 C 语言的编译模型与运行模型,现代操作系统暴露出的原生接口往往是 C 语言描述的。从.c 文件到.o 文件需要经过 预处理、编译(代码转换)、汇编、链接 .i 表示经过预处理的文件 .s 表示汇编语言源代码文件 .S 表示经过预编译的汇编语言源代码文件 .o 表示编译后的目标文件 C...转载 2019-07-15 18:11:56 · 518 阅读 · 0 评论 -
C++ 11右值引用与移动语义 -----上
分类 Django搭建Web学习笔记项目 1、介绍 右值引用是C++11的新特性,初次接触觉得很难理解。因此我们将不直接给出右值引用的定义,而是从没有引入右值引用之前存在的问题,引入右值引用之后问题是如何解决的。 在 C语言 最原始的定义中,左值可以位于赋值运算符左边或者右边;右值只能位于赋值运算符右边。 int a = 42; int b = 43; // a, b 都是左值 ...原创 2019-07-30 14:39:47 · 437 阅读 · 0 评论 -
C++开源项目
值得学习的C开源项目 1、Webbench Webbench 是一个在Linux 下使用的非常简单的网站测压工具。它使用fork() 模拟出多个客户端同时访问服务器,测试网站在压力下的工作性能,最多可以模拟3万个并发连接欸去测试网站的负载能力。Webbench 使用C 语言编写,代码简单,源码加起来不到600 行。 Webbench 下载地址 http://home.tiscali.cz/...原创 2019-08-02 18:27:42 · 645 阅读 · 0 评论 -
C++ 11右值引用与移动语义 -----下
分类 1、完美转发(存在的问题) 右值引用还可以被用来解决完美转发的问题,考虑下面的代码,很明显代码的意图是将Arg 参数通过 factory 函数转发到 T 的构造函数中。但是代码在这种状况 template<typename T, typename Arg> shared_ptr<T> factory(Arg arg) { return shar...原创 2019-07-30 15:33:50 · 294 阅读 · 0 评论 -
史上最全Epoll 源码解析
仔细看会有收获! //sys/epoll.h #ifndef __sigset_t_defined #define __sigset_t_defined typedef __sigset_t sigset_t; #endif /* 错误标志 EINVAL : 无效的标志 EMFILE : 用户打开的文件超过了限制 ENFILE : 系统打开的文件超过了限制 ENOMEM : 没有足够的内存完成...翻译 2019-07-26 12:20:11 · 689 阅读 · 1 评论