今天我正在学习如何声明结构记录类型,结构化记录类型在数组中的应用。所以基本上这是我如何开始使用结构编码。结构错误表达式必须有bool类型
struct myStock
{
string title;
double price;
int stock_lvl;
bool award;
};
myStock stock[4]; //store 4 record
void initialize()
{
stock[1].title = "Ilo Ilo";
stock[1].price = 35.55;
stock[1].stock_lvl = 15;
stock[1].award = 1;
stock[2].title = "Money Just Enough";
stock[2].price = 10.35;
stock[2].stock_lvl = 0;
stock[2].award = 0;
stock[3].title = "My Mother-in-Law";
stock[3].price = 22.50;
stock[3].stock_lvl = 5;
stock[3].award = 0;
stock[4].title = "Stars";
stock[4].price = 22.95;
stock[4].stock_lvl = 1;
stock[4].award = 1;
}
一切工作正常,但是当我来到这个部分,这部分是在阵列将循环并检查值stock_lvl
和基地的条件和执行。但是我收到的错误是“结构错误表达式必须有bool类型”。我在这里做错了什么?我不是要求回答,但也许如果有人能向我解释?
int replenishStock()
{
for(int i=0; i<4; i++)
{
if(myStock[i].stock_lvl < 2)
{
myStock[i].award = true;
myStock[i].stock_lvl = +10;
}
else
myStock[i].stock_lvl = +5;
}
[FYI]'stock [4]'不好。这是未定义的行为和一个滴答作响的定时炸弹。 – NathanOliver
为什么初始化'award'的值为'1'和'0',但在循环中使用'true'? –
这个和'stock [0]'保存未初始化的数据。你真的需要读一本书。这非常非常**非常基本。 – IInspectable