0

マップのキーセットに対して .find(itr, itr, value) アルゴリズムを使用する方法はありますか? キー値をセットに転送する (そしてそれを使用する) ためにマップ上でイテレータを使用できることは知っていましたが、それを行うためのより迅速な方法があるかどうかはわかりませんでした。

4

1 に答える 1

1

これはs の内部構造を利用するため、おそらくstd::map<K, V>'s find()memberを使用するのが最善でしょう。mapたとえば、キーの属性だけを探しているなどの理由で、本当にsonethingを見つけたい場合は、次を使用する必要がありますstd::find_if()

auto it = std::find_if(m.begin(), m.end(),
    [=](decltype(*m.begin()) const& e){
        return e.first == v;
    });
于 2012-11-18T21:49:44.977 に答える