Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
マップのキーセットに対して .find(itr, itr, value) アルゴリズムを使用する方法はありますか? キー値をセットに転送する (そしてそれを使用する) ためにマップ上でイテレータを使用できることは知っていましたが、それを行うためのより迅速な方法があるかどうかはわかりませんでした。
これはs の内部構造を利用するため、おそらくstd::map<K, V>'s find()memberを使用するのが最善でしょう。mapたとえば、キーの属性だけを探しているなどの理由で、本当にsonethingを見つけたい場合は、次を使用する必要がありますstd::find_if()。
std::map<K, V>
find()
map
std::find_if()
auto it = std::find_if(m.begin(), m.end(), [=](decltype(*m.begin()) const& e){ return e.first == v; });