我正在 MAC
(xcode
) 中使用 boost 库。我有两个关于 boost::circular_buffer
的问题。
1 - 声明circular_buffer时出现语法错误
boost::circular_buffer<int> cb(10);
Expected parameter decelerator
Expected ')'
2 - 第二个问题是当我使用push_back将元素添加到boost::circular_buffer
中时,如何从circular_buffer中提取/获取元素,pop_front
没有给出该元素.
最佳答案
boost::circular_buffer<T>::front()
为您提供对“前面”元素的引用,而 boost::circular_buffer<T>::pop_front()
将删除该元素。
boost::circular_buffer<T>::back()
为您提供对后面元素的引用,而 boost::circular_buffer<T>::pop_back()
删除该元素。
您的语法错误似乎是由 the most vexing parse. 引起的尝试一下:
boost::circular_buffer<int> cb;
cb.set_capacity(10);
或更简洁地说:
boost::circular_buffer<int> cb((10));
关于c++ - 如何从circular_buffer中获取元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21760121/