c ++中的队列容器数组

时间:2015-04-27 07:19:34

标签: c++ stl containers

我是c ++的初学者,但我必须在我的项目中实现一些先进的东西。 基本上我想创建队列容器数组。我有一个设备类,它具有类型为op_parmas_t的队列,并且应用程序在该队列中排队。但是现在我希望不同的线程在不同的队列上运行但是单个设备,所以我需要在设备类中使用队列数组。

class DeviceCPU : publice Device {
Public:
      DeviceCPU();
      ~DeviceCPU();
      int enqueue(op_params_t *op);
Private:
      std::queue<op_params_t *> opsEnqueued;
}

但是对于多个线程,我想要不同的队列。所以我想创建队列数组, 像,

std::queue<op_params_t *> opsEnqueued[MAX_THREADS];

或者可能是我可以创建队列的向量,但我不确切知道如何,需要一些指针。

2 个答案:

答案 0 :(得分:0)

#include <array>
std::array<std::queue<op_params_t*>, MAX_THREADS> opsEnqueued;

答案 1 :(得分:0)

使用动态数组

#include <vector>
std::vector<std::queue<op_params_t *>> opsEnqueued;