![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
墨尔本--晴
这个作者很懒,什么都没留下…
展开
-
学习C++——lambda表达式
C++ languageC++11 - the new ISO C++ standardThe C++ Standards Committee - ISOCPP上面三个是C++学习网站,有助于了解C++11的新特性。lambda表示式(C++11)1、介绍lambda我们使用过的仅有两种可调用对象是函数和函数指针。还有其他两种可调用对象:重载了函转载 2017-06-29 18:16:33 · 230 阅读 · 0 评论 -
C++ const关键字总结
reference:http://blog.csdn.net/davidsguo008/article/details/75246094const是一个C++语言的限定符,它限定一个变量不允许被改变。使用const在一定程度上可以提高程序的安全性和可靠性。另外,在观看别人代码的时候,清晰理解const所起的作用,对理解对方的程序也有一些帮助。1. 修饰常量用const修饰的变量是不可变的,以下两种...转载 2018-02-09 18:01:20 · 161 阅读 · 0 评论 -
C++ emplace_back 和 push_back 的区别
emplace_back和push_back都是向容器内添加数据.对于在容器中添加类的对象时, 相比于push_back,emplace_back可以避免额外类的复制和移动操作."emplace_back avoids the extra copy or move operation required when using push_back."为了证实原创 2018-01-10 10:35:02 · 3986 阅读 · 1 评论 -
位运算符及其应用
一、C语言的六种位运算符:& 按位与| 按位或^ 按位异或~ 取反左移>> 右移 1. 按位与运算按位与运算符"&"是双目运算符。 其功能是参与运算的两数各对应的二进位相与。只有对应的两个二进位均为1时,结果位才为1 ,否则为0。参与运算的数以补码方式出现。例如:9&5可写算式如下: 0000转载 2017-11-09 18:12:06 · 153 阅读 · 0 评论 -
boost::pool
转载于:http://blog.csdn.net/sndaxdrs/article/details/6175615 Boost库的pool提供了一个内存池分配器,用于管理在一个独立的、大的分配空间里的动态内存分配。Boost库的pool主要适用于快速分配同样大小的内存块,尤其是反复分配和释放同样大小的内存块的情况。使用pool内存池主要有以下两个优点: 1. 能够有效地管理许多小型对转载 2017-10-24 11:18:12 · 220 阅读 · 0 评论 -
std::make_shared
http://bitdewy.github.io/blog/2014/01/12/why-make-shared/C++11 中引入了智能指针, 同时还有一个模板函数 std::make_shared 可以返回一个指定类型的 std::shared_ptr, 那与 std::shared_ptr 的构造函数相比它能给我们带来什么好处呢 ?优点效率更高shar转载 2017-10-13 14:27:59 · 2246 阅读 · 0 评论 -
浅谈boost.variant的几种访问方式
前言variant类型在C++14并没有加入,在cppreference网站上可以看到该类型将会在C++17加入,若想在不支持C++17的编译器上使用variant类型,我们可以通过boost的variant类型,variant类型可以表示任意一种类型和any类型有些相似,但还是有些区别,比如说variant支持的类型需提前定义,而any类型不需要,获取any类型的值需要给出原始类型,然而转载 2017-10-20 19:30:45 · 777 阅读 · 0 评论 -
C++ 智能指针详解
文章转载于:http://blog.csdn.net/xt_xiaotian/article/details/5714477一、简介由于 C++ 语言没有自动内存回收机制,程序员每次 new 出来的内存都要手动 delete。程序员忘记 delete,流程太复杂,最终导致没有 delete,异常导致程序过早退出,没有执行 delete 的情况并不罕见。用智能指针便可以有效缓解这类问转载 2017-09-18 15:43:56 · 354 阅读 · 0 评论 -
C++11 新特性: unordered_map 与 map 的对比
文章转载于http://www.cnblogs.com/NeilZhang/p/5724996.htmlunordered_map和map类似,都是存储的key-value的值,可以通过key快速索引到value。不同的是unordered_map不会根据key的大小进行排序,存储时是根据key的hash值判断元素是否相同,即unordered_map内部元素是无序的,转载 2017-09-17 13:20:05 · 300 阅读 · 0 评论 -
C++ 后台服务器 基本面试题型
C++static 关键字有哪些用法说说继承和组合的概念?什么时候应该用继承?什么时候应该用组合C++ 的菱形继承会发生什么问题?画出对应的内存布局说说对 C++ 智能指针的了解说说虚函数实现机制如果父类中仅有方法,子类有一个 int 变量,这时候 sizeof 是多大指针一定是 4 个字节吗#define 和 inline 函数的区别是什么const转载 2017-08-04 11:54:13 · 4007 阅读 · 0 评论 -
内存池——第一章 几种常用的内存池技术
几乎所有应用程序中都会有内存的分配和释放,而频繁的分配和释放内存无疑会产生内存碎片,降低系统性能,尤其对性能要求较高的程序比较明显。下面介绍几种常见的内存池技术。 一 环形缓存 环形缓存的基本原理如图: 初始化状态(wpos_ = rpos_): 写了部分数据,同时读了一部分数据(wpos_ > rpos_): w转载 2017-06-28 11:53:33 · 300 阅读 · 0 评论 -
C++ 基本类型所占空间大小
C++基本类型大小int,long int,short int的宽度都可能随编译器而异。但有几条铁定的原则(ANSI/ISO制订的):sizeof(short int)<=sizeof(int)sizeof(int)<=sizeof(long int)short int至少应为16位(2字节)long int至少应为32位。各个类型的变量长度由编译器来决定(实际上与操作系统位数和编译器...原创 2018-03-07 11:38:38 · 4698 阅读 · 0 评论