Declaring queue in c++
我正在尝试在c中声明队列:
1 2 3 4 5 | #include <queue> ...... ...... queue<Process> *readyQueue = new queue<Process>; ....... |
但是我一直收到此错误
'queue' was not declared in this scope
我想念什么?我当然创建了Process结构,所以问题不存在。
有什么问题?
您缺少名称空间规范。我想你想要std函数。
使用以下任一方式:
1 2 3 | #include <queue> ...... std::queue<Process> *readyQueue = new std::queue<Process>; |
或
1 2 3 4 | #include <queue> using std::queue; ...... queue<Process> *readyQueue = new queue<Process>; |
您需要指定正确的名称空间
您应该使用
1 2 3 4 5 6 7 8 9 10 11 | #include <queue> int main() { Process p1; Process p2; std::queue<Process> readyQueue; readyQueue.push(p1); readyQueue.push(p2); } |
有关更多详细信息,请参见参考。