爲什麼std::queue
使用std::vector
創建容器不會引發編譯器錯誤?爲什麼使用std :: vector容器創建std ::隊列不會引起編譯器錯誤
只有在調用彈出窗口時纔會出現編譯錯誤(這是明確的,因爲矢量不提供pop_front()
)。
#include <iostream>
#include <queue>
#include <vector>
using namespace std;
int main()
{
queue<int, vector<int>> s;
s.push(10);
cout << s.front() << endl;
s.pop();
return 0;
}
什麼是「非默認的std :: vector」? –
@KerrekSB:意思是std :: vector不是隊列的默認容器(它是std :: deque)。無論如何編輯標題。是更清晰。 – 911
那麼,創作作品。這是'流行',不起作用,所以你在那裏得到錯誤。 –