繁体   English   中英

在c ++中声明队列

[英]Declaring queue in c++

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

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

但我一直得到这个错误

在此范围内未声明'queue'

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

您缺少命名空间规范。 我想你想要std函数。 使用:

 #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);
}

有关详细信息,请参阅参考

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM