为了检查简单数组中的相等性,我有以下内容;
int a[4] = {9,10,11,20};
if(a[3]== 20){
cout <<"yes"<< endl;
}
但是,当我创建一个类型类数组并尝试检查相等性时,我得到了错误;
Human 是一个具有私有变量的类,用于名称、年龄、性别等,并为这些变量获取和设置函数。
humanArray 的大小为 20
void Animal::allocate(Human h){
for (int i =0; i<20; i++){
if(humanArray[i] == h){
for(int j = i; j<size; j++){
humanArray[j] = humanArray[j +1];
}
}
}
}
我收到以下错误;
error: no match for 'operator==' in '((Animal*)this)->Animal::humanArray[i] == h'|
我可以传入索引和人类,并检查索引号。但是,有没有办法检查两个元素是否相同?我不想检查说“人名”和人名,因为在某些方面我的人没有名字。