ベクター実装を使って在庫システムを作ろうとしていますが、うまくいかないようです。作成した構造体を使用して問題が発生しています。注: これは実際にはゲーム コードではありません。これは、ベクターと構造体に関する知識をテストするために使用している別のソリューションです。
struct aItem
{
string itemName;
int damage;
};
int main()
{
aItem healingPotion;
healingPotion.itemName = "Healing Potion";
healingPotion.damage= 6;
aItem fireballPotion;
fireballPotion.itemName = "Potion of Fiery Balls";
fireballPotion.damage = -2;
vector<aItem> inventory;
inventory.push_back(healingPotion);
inventory.push_back(healingPotion);
inventory.push_back(healingPotion);
inventory.push_back(fireballPotion);
if(find(inventory.begin(), inventory.end(), fireballPotion) != inventory.end())
{
cout << "Found";
}
system("PAUSE");
return 0;
}
前のコードでは、次のエラーが表示されます。
1>c:\program files (x86)\microsoft visual studio 11.0\vc\include\xutility(3186): エラー C2678: バイナリ '==' : タイプ 'aItem' の左側のオペランドを取る演算子が見つかりません (または受け入れ可能な変換がない)
エラーには他にもあります。必要な場合はお知らせください。小さくてばかげたものだと思いますが、私は2時間以上それを叩いてきました. 前もって感謝します!