我在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
不会给元素。
答案 0 :(得分:4)
boost::circular_buffer<T>::front()
为您提供了对“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));