可能な限りコードの重複を避けたい。 bool T :: operator <(const T&right)のようなメンバ関数をbinary_functionに変換することは可能ですか?
std::sort(SomeContainer.begin(), SomeContainer.end(), FuncAdaptedFromOp);
これはStackOverflowの中に私の非常に最初の質問ですが、
class T {
int val;
bool operator < (const T& right) const { return val < right.val; }
}
は、私はこのようなのstd ::並べ替え()を呼び出すことができるようにしたい、私のようなクラスがあるとします。許してください。
EDIT
問題は、クラスが複数bool T::Compare (const T& right)
機能を有していてもよいということです。私はまだアダプタが好きです。時々私は、ソースVertex
で、時には先Vertex
によってソートしたい
class Edge {
Vertex u, v;
bool CompareSrc (const Edge& right) const { return u < right.u; }
bool CompareDest (const Edge& right) const { return v < right.v; }
}
、この例を見てみましょう。私はこれが可能かどうかを知りたいだけです。
ありがとうございます。これはまさに私が望んでいたものです。 – Hindol