C STL:列表与指针 – 迭代器无法访问?

我正在努力使用一个持有“Object”对象指针的STL列表.

我宣布:

list<Object*> objectlist;

并通过插入:

this->objectlist.push_back(new Object(address,value,profit));

并尝试像地图和其他人一样迭代:

list<Object*>::iterator iter;

iter = this->objectlist.begin();

while(iter != this->objectlist.end())
{
    iter->print();
}

其中print()是public的Object类;

这里有什么问题?

我无法通过迭代器访问列表中的对象?

解决方法

你需要(* iter) – > print();

因为你有一个指针的迭代器,你必须首先取消引用迭代器(它得到你的Object *),然后箭头取消引用Object *,并允许打印调用.

相关文章

本程序的编译和运行环境如下(如果有运行方面的问题欢迎在评...
水了一学期的院选修,万万没想到期末考试还有比较硬核的编程...
补充一下,先前文章末尾给出的下载链接的完整代码含有部分C&...
思路如标题所说采用模N取余法,难点是这个除法过程如何实现。...
本篇博客有更新!!!更新后效果图如下: 文章末尾的完整代码...
刚开始学习模块化程序设计时,估计大家都被形参和实参搞迷糊...