我有一个积分列表。
class Point {
private:
int xval, yval;
public:
Point(int x=0, int y=0) {
xval = x;
yval = y;
}
int x() { return xval; }
int y() { return yval; }
friend bool operator== (const Point a,const Point b) {
return (a.xval==b.xval && a.yval==b.yval);
}
};
现在主要我想查找某些点,如果它们存在于列表中,如果存在,我想要访问该点的y值。
list<Point> coordinates;
for (list<Point>::iterator i = coordinates.begin(); i!=coordinates.end(); i++) {
if(*i.y()>height) height = *i.y();
}
现在我的问题是如何访问一个点的y()函数?因为这段代码告诉我一个错误,y不是'std :: _ List_iterator&lt; _Mylist&gt;'的元素
答案 0 :(得分:2)
使用
if((*i).y()>height) height = (*i).y();
答案 1 :(得分:2)
试试这个:i->y()
或者:(*i).y()