1

次のコードを考えると:

void World::extractStates(deque<string> myDeque)
{
    unsigned int i = 0;
    string current; // current extracted string

    while (i < myDeque.size())      // run on the entire vector and extract all the elements
    {
        current =  myDeque.pop_front(); // doesn't work 
        // do more stuff
    }
}

繰り返しごとに先頭の要素を抽出したいのですpop_front()が、void メソッドです。要素を(前面に)取得するにはどうすればよいですか?

よろしく

4

1 に答える 1

13

frontアイテムを読んだりpop_front削除したりするために使用します。

current = myDeque.front();
myDeque.pop_front();

この方法は逆効果に見えるかもしれませんが、deque適切な例外安全性の保証を提供するために必要です。

于 2012-12-12T15:59:05.547 に答える