我刚刚学会了如何使用这个运算符:->,我试着创建一些练习项目,这样我就能记住它,熟悉它。我创建了一个程序,输入我的生命值,然后使用->操作符治疗(添加生命值)。但是当我运行程序时,我的生命值保持在50(因为我将我的当前生命值设置为50)。
下面是我的代码:#include <iostream>
using namespace std;
struct myhealth
{
unsigned short my_health;
};
void addhealth(myhealth* addhealth)
{
addhealth->my_health += 50;
};
int main()
{
myhealth player;
player.my_health = 50;
cout << "My earlier health : " << player.my_health << endl;
myhealth();
cout << "My current health : " << player.my_health;
cin.get()
return 0;
}
您永远不会调用addhealth
,因此该值永远不会被修改。
这行代码:
myhealth();
似乎写错了。相反,我认为你的意思是:
addhealth(&player);