queue

queueは、C++標準ライブラリのSTL(標準テンプレートライブラリ)のひとつで、dequeを特殊化してFIFO(First In First Out)なキュー(待ち行列)として使うようにしたもの・・・。

queue - C++ Reference

コンテナを内包し、操作を制限することで、特殊なコンテナとして実現したものをコンテナアダプタという・・・。
queueは、追加は末尾からしかできない・・・。そして、取出しは先頭からしかできない・・・。

queueをインクルード・・・。

今回は、int型queueオブジェクトのqueだけ・・・。

que.pushで、0, 1, 2と順に追加していく・・・。

que.frontは、先頭の要素の値を返す・・・。
その要素を削除はしない・・・。

que.popは、先頭の要素を取り出す(つまり削除する)・・・。

再び、que.frontで、先頭の値を取得して、出力・・・。

今度は、que.backで、末尾の値を取得して、出力・・・。

que.pushで3を末尾に追加・・・。

再び、que.backで、末尾の値を取得して、出力・・・。

$ vi queue.cpp
$ g++ queue.cpp -o queue
$ ./queue
que.front() = 0
que.front() = 1
que.back() = 2
que.back() = 3
$

最初は、0, 1, 2の状態なので、frontは0を返す・・・。
popすると、0が取り出されて、1, 2なので、frontは1・・・。
次にbackで末尾を取得すると2・・・。
pushで3を追加すると、1, 2, 3になるから、backで再び取得した末尾は3になる・・・。

Sample/cpp/queue/queue/src/queue at master · bg1bgst333/Sample · GitHub