Ich möchte einzigartig und in set<Foo, FooComp>
bestellen.C++ Set Unique und Bestellung
Im unteren Code möchte ich eine eindeutige und Reihenfolge von b und c. Also, keine gleichen foo.a
und bestellen Sie durch foo.b
und foo.c
.
Wie kann ich das tun?
struct Foo {
int a, b, c;
Foo(int a, int b, int c) : a(a), b(b), c(c) {}
}
struct FooComp {
bool operator() (const Foo& f, const Foo& s) const {
if (f.pattern == s.pattern) {
return false;
}
if (f.start == s.start) {
return f.length < s.length;
}
return f.start < s.start;
}
}
oder verwende ich andere STL oder Datenstrukturen?
und ich denke, über Karte verwenden, 'als Schlüssel und' (b, c) 'als Wert a'. Aber, Karte ist nicht für diesen Fall entworfen (ich dachte). – Maybe