我有两个问题: 1.如何创建增强循环队列的向量? 2.我应该如何指出前者的矢量大小?
我尝试了以下操作,但收到错误
// Boost Circular Queue -- This works fine
boost::circular_buffer<pkt> pkt_queue(3);
// Vector of queues - This has errors, i also wish to initialize the vector
std::vector<pkt_queue> per_port_pkt_queue;
答案 0 :(得分:1)
你想要一个队列矢量:
#include <boost/circular_buffer.hpp>
struct pkt { int data; };
int main() {
// Boost Circular Queue -- This works fine
typedef boost::circular_buffer<pkt> pkt_queue;
pkt_queue a_queue(3);
// Vector of queues - This has errors, i also wish to initialize the vector
std::vector<pkt_queue> per_port_pkt_queue;
per_port_pkt_queue.emplace_back(3);
per_port_pkt_queue.emplace_back(3);
per_port_pkt_queue.emplace_back(3);
// or
per_port_pkt_queue.assign(20, pkt_queue(3)); // twenty 3-element queues
}