簡體   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