「std::queue」の版間の差分
提供: C++入門
(ページの作成:「std::queue とは、FIFO(ファーストイン ファーストアウト)のキューを実現するコンテナです。 '''読み方''' ;std::queue:えす...」) |
(相違点なし)
|
2014年7月13日 (日) 00:47時点における最新版
std::queue とは、FIFO(ファーストイン ファーストアウト)のキューを実現するコンテナです。
読み方
- std::queue
- えすてぃーでぃー きゅー
目次
概要
キュー(queue)は、いわゆる待ち行列です。 キューは、最初に入れられたものが最初に取り出されます。先入れ先だしのリスト構造でデータを保持します。 取り出された値は、キューから削除されます。 キューへのデータ追加は、キューの一番後ろです。
簡単な例をあげるとレジに並んでいる人です。列の最初に並んだ人が最初にレジで対応してもらいます。あとから来た人は、列の一番後ろに並びます。
キューの追加
pushで列の後ろに追加します。
push();
キューの取り出し
最初の値を取り出します。キューから削除はされません。
front();
キューの削除
popでキューの先頭を削除します。
pop();
std::queueの単純な例 queue1.cpp
ソースコード queue1.cpp
/* * queue1.cpp * Copyright (C) 2014 kaoru <kaoru@bsd> */ #include <iostream> #include <queue> using namespace std; int main(int argc, char const* argv[]) { queue<int> q1; q1.push (1); q1.push (2); q1.push (3); cout << q1.front() << endl; q1.pop(); cout << q1.front() << endl; q1.pop(); cout << q1.front() << endl; q1.pop(); return 0; }
コンパイル
c++ queue1.cpp -o queue1
実行例
% ./queue1 1 2 3
キューが空かどうかを確認する例 queue_empty1.cpp
empty()でキューがからかどうか確認できます。
ソースコード queue_empty1.cpp
/* * queue_empty1.cpp * Copyright (C) 2014 kaoru <kaoru@bsd> */ #include <iostream> #include <queue> using namespace std; int main(int argc, char const* argv[]) { queue<int> q1; queue<int> q2; q1.push (1); q1.push (2); q1.push (3); cout << "q1: " << q1.empty() << endl; // 0 cout << "q2: " << q2.empty() << endl; // 1 return 0; }
コンパイル
c++ queue_empty1.cpp -o queue_empty1
実行例
% ./queue_empty1 q1: 0 q2: 1