【发布时间】:2015-10-14 16:37:23
【问题描述】:
假设我有一个类元素,
class Element {
private:
int value;
public:
void setValue(int v) {
value = v;
}
int getValue() {
return value;
}
};
我将此类的对象存储在一个数组中。 现在如何检查我的对象数组是否包含某个元素类的对象。我尝试使用此函数匹配对象的值...有没有更好的方法?
bool contains(Element e)
{
int i;
for(i=0;i<size;i++)
if(elements[i].getValue()==e.getValue()) return true;
else return false;
}
【问题讨论】:
-
你从哪里得到“元素”数组?
-
首先,您在代码中使用了类似于“for else”循环的python。在 c++ 中它不会像在 python 中那样工作。 “Else”是“if else”控制流结构的一部分,因此您的 for 循环将在第 0 个元素处结束。除了你的代码应该可以工作。
-
也忘记在函数参数中设置大小。