Pas besoin des RTTI + découvrir le remove_if si particulier...

relecture
Francois DELOBEL 2 years ago
parent 3daabda84c
commit 3b2bbb4814

@ -118,22 +118,10 @@ int main()
} }
cout << endl; cout << endl;
auto begin = vanime.begin(); auto found = remove_if(std::begin(vanime), std::end(vanime),
auto end = vanime.end(); [](Personnage *p){return dynamic_cast<Kenny*>(p) != nullptr; }
);
for (auto p = begin; p != end; ++p) vanime.erase(found, std::end(vanime));
{
cout << "typeid(character) == typeid(Kenny): "
<< typeid(*p).name() << "==" << typeid(Kenny).name() << ": "
<< (typeid(*p) == typeid(Kenny))
<< endl << endl;
// FIXME
if (typeid(*p) == typeid(Kenny))
{
vanime.erase(p);
}
}
for (Personnage *character: anime) for (Personnage *character: anime)
{ {

Loading…
Cancel
Save