boost 循环缓冲区
boost 循环缓冲区
- #include <boost/circular_buffer.hpp>
- int _tmain(int argc, _TCHAR* argv[])
- {
- boost::circular_buffer<int> cb(3);
- // Insert some elements into the buffer.
- cb.push_back(1);
- cb.push_back(2);
- cb.push_back(3);
- int a = cb[0]; // a == 1
- int b = cb[1]; // b == 2
- int c = cb[2]; // c == 3
- // The buffer is full now, pushing subsequent
- // elements will overwrite the front-most elements.
- cb.push_back(4); // Overwrite 1 with 4.
- cb.push_back(5); // Overwrite 2 with 5.
- // The buffer now contains 3, 4 and 5.
- a = cb[0]; // a == 3
- b = cb[1]; // b == 4
- c = cb[2]; // c == 5
- // Elements can be popped from either the front or the back.
- cb.pop_back(); // 5 is removed.
- cb.pop_front(); // 3 is removed.
- int d = cb[0]; // d == 4
- return 0;
- }
boost 循环缓冲区的更多相关文章
- linux c++循环缓冲区模板类
一:概述 实际学习和工作中,我们经常会遇到读写大量数据的情况,这个时候我们可能就用到了循环缓冲区. 循环缓冲区在处理大量数据的时候有很大的优点,循环缓冲区在一些竞争问题上提供了一种免锁的机制,免锁的前 ...
- 高效的两段式循环缓冲区──BipBuffer
Simon Cooke,美国 (原作者) 北京理工大学 20981 陈罡(翻译) 写在前面的话: 循环缓冲区是一个非常常用的数据存储结构,已经被广泛地用于连续.流数据的存储和通信应用中.对于循环缓冲区 ...
- memcpy() 实现循环缓冲区数据的读写
使用memcpy()函数做循环缓冲区的读写 首先对mencpy函数做个简单的介绍 下面是 memcpy() 函数的声明 void *memcpy(void *str1, const void *str ...
- 【笔记】Linux内核中的循环缓冲区
1. 有关ring buffer的理解 1) ring buffer位首尾相接的buffer,即类似生活中的圆形跑道: 2) 空闲空间+数据空间=ring buffer大小 3) ring bu ...
- Boost简介
原文链接: 吴豆豆http://www.cnblogs.com/gdutbean/archive/2012/03/30/2425201.html Boost库 Boost库是为C++语言标准库提供扩 ...
- boost::asio译文
Christopher Kohlhoff Copyright © 2003-2012 Christopher M. Kohlhoff 以Boost1.0的软件授权进行发布(见附带的LICENS ...
- boost库的安装,使用,介绍,库分类
1)首先去官网下载boost源码安装包:http://www.boost.org/ 选择下载对应的boost源码包.本次下载使用的是 boost_1_60_0.tar.gz (2)解压文件:tar - ...
- Boost.Asio技术文档
Christopher Kohlhoff Copyright © 2003-2012 Christopher M. Kohlhoff 以Boost1.0的软件授权进行发布(见附带的LICENSE_1_ ...
- C++ Boost库分类总结
c# 程序员写c++,各种不适应.尤其是被内存操作和几十种字符串类型的转换,简直疯了,大小写转换竟然要手动写代码实现. Boost看介绍不错,也不知道能不能跨平台.过几天要上linux写c++, 也不 ...
随机推荐
- shell学习之字符串处理
1.获取字符串长度 value=abcd;echo ${#value} 输出:42.获取子串 value=abcd;:} 输出:d value:a:b,其中a表示起始位置,b表示获取的子串的长度. 3 ...
- BZOJ 3038: 上帝造题的七分钟2
3038: 上帝造题的七分钟2 Description XLk觉得<上帝造题的七分钟>不太过瘾,于是有了第二部. "第一分钟,X说,要有数列,于是便给定了一个正整数数列. 第二分 ...
- Asteroids(最小点覆盖)
Asteroids Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 18183 Accepted: 9905 Descri ...
- Windows下搭建deepnet环境
近期在做deep learning的项目,学习了一下deepnet,之前搭建了一个windows下的deepnet的学习开发环境,把搭建系统的过程分享给大家. 1.我用的是windows下的visua ...
- Activity的onSaveInstanceState()和onRestoreInstanceState()以及API详解
为了弄清楚onSaveInstanceState()方法和onRestoreInstanceState()方法,我翻译一下谷歌的API,翻译如下: There are a few scenarios ...
- PHP - __clone 对象克隆
<?php /** * 此例子解释什么是深克隆. * 克隆学生类. */ class Student { public $name = '张三'; public $age = 12; //所属老 ...
- 【Eclipse Plugin】SonarQube 启动报错
由于近期,信息安全部在搞代码优化工作.所以,配合上边的工作需求,使用sonar对代码进行优化检测.在Eclipse上装Sonar很简单,只要在Eclipse Marketplace上面搜索“Sonar ...
- iOS原生App与H5页面交互笔记
文/MikeZhangpy(简书作者)原文链接:http://www.jianshu.com/p/4ed3e5ed99c6著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”. 最近在做一个项 ...
- 判断圆和矩形是否相交C - Rectangle and Circle
Description Given a rectangle and a circle in the coordinate system(two edges of the rectangle are p ...
- BZOJ 1787: [Ahoi2008]Meet 紧急集合( 树链剖分 )
这道题用 LCA 就可以水过去 , 但是我太弱了 QAQ 倍增写LCA总是写残...于是就写了树链剖分... 其实也不难写 , 线段树也不用用到 , 自己YY一下然后搞一搞就过了...速度还挺快的好像 ...