S
Das ist, weil hier öfters Leute ankommen, die ein (meist einfaches) Problem nicht selbst lösen können und hoffen, dass wir ihnen das lösen.
Und da wir ja alle klischeemäßig fette, schüchterne, im Keller hausende Profi-Infomatiker-H4xx0rz sind, die keinerlei Kontakt mit dem weiblichen Geschlecht haben, denken dann manche Leute, dass wir auf Frauen(-namen) eher anspringen. Was leider auch oft genug der Fall ist, wobei ich jetzt alelrdigns keien zeit habe, nach nem Beispiel zu suchen.
Nimms nicht direkt persönlich, wenn hier was grober gesprochen wird. Weil dafür ist das Niveau und das technische Verständnis hier extrem hoch.
Kannst ja nach GuteFrage.net gehen, vielleicht wirst du da hochwertiger beraten (Bsp
Edit:
Muss grad auf en anderes Programm warten, kannst hier mal reinschauen:
#include <vector>
#include <algorithm>
#include <iostream>
#include <iterator>
class Person
{
unsigned int groesse;
unsigned int gewicht;
unsigned int alter;
unsigned int iq;
public:
Person(unsigned int groesse, unsigned int gewicht, unsigned int alter, unsigned int iq)
: groesse(groesse), gewicht(gewicht), alter(alter), iq(iq)
{}
unsigned int getSize() const
{
return groesse;
}
unsigned int getWeight() const
{
return gewicht;
}
unsigned int getAge() const
{
return alter;
}
unsigned int getIQ() const
{
return iq;
}
friend std::ostream& operator << (std::ostream & os, Person const& p)
{
os << p.getSize() << "-" << p.getWeight() << "-" << p.getAge() << "-" << p.getIQ();
return os;
}
};
class Personlist
{
std::vector<Person> persons;
public:
Personlist() = default;
void addPerson(Person const& p)
{
persons.push_back(p);
}
void printBySize(std::ostream & os) const
{
print(os, [](Person const& a, Person const& b){return a.getSize() < b.getSize(); });
}
void printByWeight(std::ostream & os) const
{
print(os, [](Person const& a, Person const& b){return a.getWeight() < b.getWeight(); });
}
void printByAge(std::ostream & os) const
{
print(os, [](Person const& a, Person const& b){return a.getAge() < b.getAge(); });
}
void printByIQ(std::ostream & os) const
{
print(os, [](Person const& a, Person const& b){return a.getIQ() < b.getIQ(); });
}
private:
template<class Cmp>
void print(std::ostream & os, Cmp comp) const
{
auto tmp = persons;
std::sort(std::begin(tmp), std::end(tmp), comp);
std::copy(std::begin(tmp), std::end(tmp), std::ostream_iterator<Person>(os, ", "));
}
};
int main()
{
Personlist pl;
pl.addPerson(Person(150, 45, 16, 75));
pl.addPerson(Person(160, 55, 24, 132));
pl.addPerson(Person(170, 65, 75, 99));
pl.addPerson(Person(180, 85, 34, 175));
std::cout << "List nach Groesse: ";
pl.printBySize(std::cout);
return 0;
}