在 c++ 中声明队列

Declaring queue in c++

本文关键字:队列 声明 c++      更新时间:2023-10-16

我正在尝试用 c++ 声明一个队列:

#include <queue>
......
......
queue<Process> *readyQueue = new queue<Process>;
.......

但是我一直收到此错误

在此范围内未声明"队列"

我错过了什么?当然,我创建了 Process 结构,所以问题不存在。问题出在哪里?

您缺少命名空间规范。我想你想要标准功能。使用以下任一方式:

 #include <queue>
 ......
 std::queue<Process> *readyQueue = new std::queue<Process>;

 #include <queue>
 using std::queue;
 ......
 queue<Process> *readyQueue = new queue<Process>;

您需要指定正确的命名空间

std::queue

您应该使用using namespace std;std::前缀。这可能有助于您:

#include <queue>
int main()
{
    Process p1;
    Process p2;
    std::queue<Process> readyQueue;
    readyQueue.push(p1);
    readyQueue.push(p2);
}

有关更多详细信息,请参阅参考资料。