単純な配列で同等性をチェックするために、私は次のことをしました;
int a[4] = {9,10,11,20};
if(a[3]== 20){
cout <<"yes"<< endl;
}
ただし、型クラスの配列を作成し、等価性をチェックしようとすると、エラーが発生します。
Human は、名前、年齢、性別などのプライベート変数と、これらの変数の get および set 関数を持つクラスです。
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'|
インデックスと人間を渡して、インデックス番号と照合することができました。ただし、2 つの要素が同じかどうかを確認する方法はありますか? 一部の部分で私の人間には名前がないため、人間の名前に対して「人間の名前」と言うのをチェックしたくありません。