-3
我创建了一个动态内存为s_points
,其类型为PointList
。 PointList
是整数值的向量。我通过从另一个数据列表中获取一些值来附加到s_points
。现在,我想我的想象来s_points
检查它是否更新或没有,但我有一个错误:为什么打印对象失败时出现“操作符<<'”不匹配错误?
no match for 'operator<<' in 'std::cout << (&z)->__gnu_cxx::
__normal_iterator<_Iterator, _Container>::operator*
[with _Iterator = Number*, _Container = std::vector<Number,
std::allocator<Number> >]()'
这里是我的代码:
MyPoints::iterator point;
PointList *s_points = new PointList;
for (point=my_points.begin();point!=my_points.end();point++){
s_points->push_back(point->Attribute(NumberTag));
}
PointList::iterator z;
for(z=s_points->begin();z!=s_points->end();z++){cout<<*z<<" ";}
请帮助我了解这个错误。
Plz首先纠正这个问题。你到底在问什么?你想要做什么? – Ryan 2011-05-23 01:19:17
你需要告诉我们更多关于'PointList'的信息。它是'typedef'到'vector'吗?我想不是。也许一个'矢量'?如果是这样,你需要告诉我们更多关于'Number'的信息。为我们提供更多的代码,尤其是您为自己定义的所有类型。 –
2011-05-23 01:29:23
@亚伦,是的,你正在写。它是矢量。我使用z-> Number(),然后我得到了值。感谢您的建议 –
niro
2011-05-23 01:43:05