我有一个非常基本的类,它存储在 STL Vector 中。我正在尝试对该向量进行排序,但遇到了神秘的 STL 错误。有人可以帮忙吗?
// Point.h
class Point {
public:
Point() : x(0), y(0) {}
Point( float x0, float y0 ) : x(x0), y(y0) {}
float x;
float y;
};
// Point.cpp, updated const as per given answers
bool operator< (const Point &p1,const Point &p2)
{
return p1.x < p2.x || (p1.x==p2.x && p1.y< p2.y);
}
同样,这个 Point 类存储在一个向量中并正在排序:
std::vector<Point> tmp=N->points;
std::sort(tmp.begin(),tmp.end());
错误:
有人可以指出我正确的方向吗?谢谢!