あなたはこれを書くことができます:
Pair v = *find_if(m.begin(), m.end(), [](const Pair & p) {
return p.second == 3;
});
そもそもキャプチャする必要はありません。
ところで、あなたは想定してはいけません std::find_if
要素が見つかります。より良い方法は、Iteratorを使用することです。
auto it = find_if(m.begin(), m.end(), [](const Pair & p) {
return p.second == 3;
});
if (it == m.end() ) { /*value not found*/ }
else {
Pair v = *it;
//your code
}