0
4

2 回答 2

4

你有一个list<Cell*>,所以你需要取消引用迭代器指针。

for (it = liste.begin(); it != liste.end(); it++)
{
   if ( (*it)->x_ == cell->x_ && (*it)->y_ == cell->y_)
      return true;
}
于 2012-05-21T20:55:11.000 回答
2

迭代器类型已operator ->重载以返回 Collection 的元素类型。

在你的情况下,这是Cell*. Cell*是一个指针,而不是 a Cell,因此不会被x定义。您将需要再次取消引用以获取实际类型。

例如:

    if ( (*it)->x_ == cell->x_ && (*it)->y_ == cell->y_)
于 2012-05-21T21:00:54.290 回答