Use find_if. Learn how to capture in lambda

relecture
Francois DELOBEL 2 years ago
parent 3b2bbb4814
commit 62e9cf2f5c

@ -184,14 +184,10 @@ int main()
} }
} }
for (auto character: vanime) auto pv = 3;
{ auto harmed = find_if(std::begin(vanime), std::end(vanime), [pv](auto p){ return p->hp() < pv;});
if (character->hp() < 3) if ( harmed != std::end(vanime) )
{ cout << "found one harmed: " << (*harmed)->name() << "(" << (*harmed) << ")" << endl;
cout << "found one: " << character->name() << "(" << character << ")" << endl;
break;
}
}
auto x = find_half_dead(4, anime); auto x = find_half_dead(4, anime);
if (x != nullptr) if (x != nullptr)

Loading…
Cancel
Save