【发布时间】:2008-11-19 14:04:47
【问题描述】:
我有一个名为 Shape 的抽象基类,它派生了 Circle 和 Rectangle,但是当我在 VS 2005 中执行以下代码时,我得到错误 Debug assertion failed。同时我没有在任何类中重载 == 运算符
表达式:向量迭代器不可解引用,这是什么原因。
vector<Shape*> s1;
s1.push_back(new Circle(point(1,2),3));
s1.push_back(new Circle(point(4,3),5));
s1.push_back(new Rectangle(point(1,1),4,5));
vector<Shape*> s2(s1);
reverse(s1.begin(),s1.end());
(*find(s1.begin(),s1.end(),new Circle(point(1,2),3)))->move(point(10,20));
【问题讨论】: