std::copy_if<>

Teil 2 von 5 der Serie STL Rezepte Sammlung

STL Rezepte Sammlung

std::weak_ptr<>

std::copy_if<>

std::mutex

std::mem_fun

std::chrono::high_resolution_clock

Extrahiere aus einer Liste (zum Beispiel die Liste aller Kunden) alle Objekte mit einer bestimmten Eigenschaft, zum Beispiel alle Personen die in München geboren sind.

struct MatchPerson : public std::binary_function <Person*, std::string, bool>
{
    bool operator()(const Person* a, const std::string& b) const
    {
        return (a->geburtsOrt == b) ;
    }
};

main()
{
    Domain domain();
    std::vector<Person*> personen; 
    domain.loadpersonen(personen);
    std::vector<Person*> muenchner_kunden;
    std::copy_if(
        personen.begin(),
        personen.end(),
        muenchner_kunden.begin(),
        std::bind2nd(MatchPerson(), "Muenchen"));
}

STL Rezepte Sammlung

std::weak_ptr<> std::mutex