C++ 如何从循环缓冲区中获取元素

C++ 如何从循环缓冲区中获取元素,c++,boost,boost-circularbuffer,C++,Boost,Boost Circularbuffer,我正在MacXcode中使用boost库。关于boost::circular\u buffer,我有两个问题 1-声明循环缓冲区时出现语法错误 boost::circular_buffer<int> cb(10); Expected parameter decelerator Expected ')' 2-第二个问题是,当我使用push_back将元素添加到boost::circular_buffer中时,如何从circular_buffer中提取/获取元素,pop_front不

我正在MacXcode中使用boost库。关于boost::circular\u buffer,我有两个问题

1-声明循环缓冲区时出现语法错误

boost::circular_buffer<int> cb(10);

Expected parameter decelerator
Expected ')'
2-第二个问题是,当我使用push_back将元素添加到boost::circular_buffer中时,如何从circular_buffer中提取/获取元素,pop_front不提供元素。

boost::circular_buffer::front提供对前面元素的引用,而boost::circular_buffer::pop_front将删除该元素

boost::circular\u buffer::back提供对后面元素的引用,而boost::circular\u buffer::pop\u back删除该元素

您的语法错误似乎是由Try引起的:

boost::circular_buffer<int> cb;
cb.set_capacity(10); 
或者更简洁地说:

boost::circular_buffer<int> cb((10));
boost::circular\u buffer::front提供对前面元素的引用,而boost::circular\u buffer::pop\u front将删除该元素

boost::circular\u buffer::back提供对后面元素的引用,而boost::circular\u buffer::pop\u back删除该元素

您的语法错误似乎是由Try引起的:

boost::circular_buffer<int> cb;
cb.set_capacity(10); 
或者更简洁地说:

boost::circular_buffer<int> cb((10));

你看过文件了吗?front and pop_front或back and pop_back.Yes,此示例不起作用,在线boost::circular_buffer cb10的10处出现语法错误;其次,我不想像cb[0],cb[1]那样对循环队列进行索引。pop_front,pop_back没有给出元素可能是我错了,但示例中没有使用这些函数来获取元素。在错误消息中,编译器使用了单词decelerator。这只会让你慢下来:/你看过文档了吗?front and pop_front或back and pop_back.Yes,此示例不起作用,在线boost::circular_buffer cb10的10处出现语法错误;其次,我不想像cb[0],cb[1]那样对循环队列进行索引。pop_front,pop_back没有给出元素可能是我错了,但示例中没有使用这些函数来获取元素。在错误消息中,编译器使用了单词decelerator。这只会让你慢下来:/Thank Chad,set_capacity工作正常,但cb10会给出相同的错误。Thank Chad,set_capacity工作正常,但cb10会给出相同的错误。