【发布时间】:2012-11-14 18:54:12
【问题描述】:
我想知道为什么我无法创建集合。 我收到以下错误
这是我的代码。
Point.cpp 我的点类
bool Point::operator<(const Point& p2)const {
return p21.length < p2.getScalarValue();
}
bool Point::operator>(const Point p2) {
bool result;
result = length > p2.getScalarValue();
return result;
}
在我的 main.cpp 中
set<Point> s_p2;
Point tempp2;
s_p2.insert(tempp2);
按照您的输入后,我已编辑代码,但出现以下错误
Point.cpp:56:46:错误:将“const Point”作为“double Point::getScalarValue()”的“this”参数传递会丢弃限定符 [-fpermissive]
这是因为我有两个比较语句吗?
【问题讨论】:
-
true应该代表什么? en.cppreference.com/w/cpp/container/set/insert -
@chris 我想,我需要给出一个比较值
-
@user1571494,您提供的
operator<用于处理所有比较。 -
@chris 我根据专家的输入进行了编辑,但我现在遇到了不同的错误。你能帮忙吗?