#include <boost/circular_buffer.hpp>
using namespace boost;
#define CIRCUALR_BUFFER_SIZE 1024*1024*1 //2MB
int main()
{
boost::circular_buffer<char> cb(5);
cb.push_back('a');
cb.push_back('b');
char ch[20] = {0};
strcpy(ch,"helloworl2");
int nSize = strlen(ch);
cb.insert(cb.end(),&ch[0],&ch[nSize]);//使用尾插法
cout << "begin: " <<*(cb.begin() + 6%cb.size()) <<endl;//使用迭代器不能超出circular_buffer的大小
cout <<"end: " <<*(cb.end()-1) <<endl; //最後一個元素的位置爲end()-1
std::string str2;
str2.append(cb.begin(),cb.end()); //將circular_buffer中的數據全部保存到string中
cout << str2 <<endl;
return 0;
}