私は単純なPosition構造体を持っています:
struct Position
{
int x;
int y;
};
ポジションのリストもあります:
std::list<Position> positons;
list :: sort()を使用してリストを並べ替えようとしていますが、Positionsオブジェクトのoperator<を定義する必要があります。私はそれをシンプルに保ち、次のようなものを作成してみました:
bool operator<(const Position& one, const Position& two)
{
return one.x < two.x && one.y < two.y;
}
しかし、それはうまくいきません。あるクラス/構造体オブジェクトが全体として別のオブジェクトよりも小さいと判断するにはどうすればよいですか?位置構造体に対してどのようにすればよいですか?
編集positions.sort()を呼び出すと、次のようなデバッグアサーションが失敗します。式:無効な演算子<