 今回はQUEUEクラスを使ったプログラミングをします。
QUEUEは、データを最後に追加し、最初から取得します。
これだけではあまり使い道はありません。
また、反復子は使えません。
今回はQUEUEクラスを使ったプログラミングをします。
QUEUEは、データを最後に追加し、最初から取得します。
これだけではあまり使い道はありません。
また、反復子は使えません。
データを追加するにはpushメンバ関数を使います。
先頭の要素を取得するにはfrontメンバ関数を使います。 先頭要素を削除するにはpopメンバ関数を使います。
では、簡単なプログラムを見てみましょう。
整数値をどんどん入力していきます。 これをpushメンバ関数で追加していきます。 データを入れ終わったら、eと入力します。 すると、入力順に数値が表示されます。 これには、frontメンバ関数で、先頭要素を取得し、表示し終わったら 先頭要素を削除します。
また、先頭要素を取得して、表示します。 そして、先頭要素を削除します。 この繰り返しです。何回繰り返すかというと、sizeメンバ関数で取得した 数だけ繰り返せば良いのです。
// queue.cpp
#include <iostream>
#include <queue>
#include <float.h>
using namespace std;
int main()
{
    queue<int>  qu;
    char data[64];
    int i, j, ndata;
    while (1) {
        cout << "整数データ(eで終了)---";
        cin >> data;
        if (strcmp(data, "e") == 0)
            break;
        ndata = atoi(data);
        qu.push(ndata);
    }
    j = (int)qu.size();
    for (i = 0; i < j; i++) {
        cout << qu.front() << endl;
        qu.pop();
    }
    return 0;
}
では、実行結果を見てみましょう。

今回は簡単でした。他の使い道を考えてみてください。
Update Feb/18/2004 By Y.Kumei