>> C++入門トップに戻る

コンテナ【queue】

今回はqueueについて説明します。
これを使うには、queueというヘッダファイルをインクルードする必要があります。
これはほとんどstackと同じです。
違うことと言えば、stackで要素を削除するときはpopを使っていましたが、
そのときの動作は、末尾の要素から削除されていきました。
ですが、queueの場合は、先頭要素から削除されます。
つまり、queueの場合は追加する場合は末尾に追加されますが、
削除されるときは、一番古い要素から削除されるというわけです。
この仕組みを、FIFO(First in first out)と言います。
逆に、stackの仕組みをLIFO(Last in first out)と言います。

また、stackではtop関数がありましたが、queueではそれがなくなり、
変わりに先頭要素を取り出すfront関数と末尾要素を取り出すback関数があります。

下記のコードを見てください。

#include <queue>

using namespace std;

int main(void)
{
	queue<int> test;

	//値をセット
	for(int i=0;i<5;++i){
		test.push(i);
	}

	//末尾要素表示
	printf("%d\n",test.back());

	//先頭要素削除
	test.pop();

	printf("%d\n",test.front());

	return 0;
}

これを実行すると、4、1と表示されます。
pop関数を実行したら、最初に追加した先頭要素が削除されていることがわかります。

次回は、mapについて説明します。



>> 【コンテナ【map】】に進む
>> C++入門トップに戻る