關閉this question後面我去做了我的第一次調試(n00b),並得到了錯誤:Attempt to extract a component of a value that is not a structure.
這是什麼意思,對我的代碼有什麼影響?嘗試提取不是結構的值的組件。 C++
if (questinfo.targetitem == "coins" && questinfo.targetitemquant >= coins)
{
cout << "You have enough coins to complete your task!" << endl;
questactive = false;
}
的結構定義,根據要求,如下:
struct questdata{
int ID;
string targetitem;
int targetitemquant;
string questgiver;
string questdesc;
};
questdata questinfo;
和成員的值是從數組指派像這樣:
questinfo.ID = atoi(queststuff[0].c_str());
questinfo.targetitem = queststuff[1];
questinfo.targetitemquant = atoi(queststuff[2].c_str());
questinfo.questgiver = queststuff[3];
questinfo.questdesc = queststuff[4];
我認爲它可能是ID
和targetitemquant
被視爲c字符串,但在targetitem
和targetitemquant
上發生錯誤。
我想這是*調試器*而不是給你這個消息的編譯器?如果是這樣,你在調試器中做了什麼來得到這個消息? –
哪個調試器?你輸入到調試器的是什麼?在代碼中你有什麼觀點? – Salgar
不知道這些變量什麼都不知道,我不可能告訴你。 –