c++ - 具有自定义对象指针列表的迭代器

标签 c++

我在此处制作了一个自定义对象列表,这是我的代码的一部分:

list<Carre*> mechants;
mechants.push_front(new Carre(joueur.getX()-1500,joueur.getY()+100));left = false;
for(list<Carre*>::iterator i=mechants.begin(); i != mechants.end(); ++i)
{
    *i->IA(joueur);
}

错误:在'* i.std::_List_iterator<_Tp>::operator->()'中请求成员'IA',它是指针类型'Carre*'(也许你打算使用'-> ' ?)|

可能问题是我制作了 Carre* 列表,我应该尝试制作 Carre 列表,但我不知道在那种情况下如何添加它们。 我已经尝试过 **i->IA(joueur) 但没有成功; 我以前从未使用过自定义对象列表,所以我不知道该怎么做。

编辑:IA(Joeur) 是 Carre 类的一个函数

最佳答案

*i->IA(joueur); 正在尝试做 *(i->IA(joueur));

你想要的是 i 周围的括号:

(*i​​)->IA(joueur);

关于c++ - 具有自定义对象指针列表的迭代器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20941213/

相关文章:

c++ - 在构造函数中使用关键字 "this"时定义复制构造函数

c++ - Vista 窗口标题中的图片(标识)

c++ - 在 while 循环中评估 true 的 false 条件

c++ - C++中按值传递和按引用传递的区别

android - for 循环崩溃 (Android NDK)

c++初始化动态内存中c风格字符串的默认值

c++ - 这个比较是否不一致(还是存在另一个问题)?

C++微内核cout问题

c++ - 在函数调用中调用 sizeof 会跳过实际调用函数!}

c++ - boost::fusion::for_each 中的函数对象不同于 std::for_each