gpt4 book ai didi

c# - 需要帮助找出为什么我的代码不起作用

转载 作者:太空宇宙 更新时间:2023-11-03 18:20:28 24 4
gpt4 key购买 nike

我目前正在为学校做一个项目,使用到目前为止编写的代码,我不明白为什么我不能做我想做的事情。

它的基本思想是我正在制作一个应用程序来跟踪某人在棋盘游戏中拥有多少“资源”。该应用程序每个资源有 4 个按钮,+1、+5、-1 和 -5。当一个人点击一个按钮时,资源图片旁边的文本应该更新为玩家剩余的资源量。 (我还没有做到这一点,也不知道该怎么做)。

我的问题是在有人按下按钮时添加/删除资源量。不是让所有按钮都依赖于相同的值,而是它们都作用于同一个变量,但使用不同的变量(即当我按 +1 3x 时,它显示 3,但是当我单击 +5 时它显示 5,然后当我再次按 +1 时它显示 4。再次按 +5 并显示

我什至想不出任何其他方法来做到这一点......我尝试了不同的方法来添加它,但它们都会导致同样的问题。

public int totalWood = 0;

public void addOneWood()
{
totalWood += 1;
Debug.Log("Amount added!");
print(totalWood);
}
public void addFiveWood()
{
totalWood += 5;
Debug.Log("Amount added!");
print(totalWood);
}
public void delOneWood()
{
totalWood -= 1;
Debug.Log("Amount Removed!");
print(totalWood);
}
public void delFiveWood()
{
totalWood -= 5;
Debug.Log("Amount Removed!");
print(totalWood);
}

预期结果:按 +1 x3 显示 3,按 +5 x1 应显示 8。再次按 +1 x1 应显示 9。

现实:按 +1 x3 显示 3,按 +5 显示 5。再次按 +1 x1 显示 4。

最佳答案

就用

public static int totalWood = 0; 

解释:

这是因为按钮压力触发的事件将实例化已定义类的新对象,因此每次单击时都会将 totalWood 初始化为零!

注意:该值将在应用程序启动时保留,如果出于任何原因关闭应用程序,它将再次重新初始化为零,如果您需要永久存储,则必须使用一种数据管理方法,例如JSON、DBMS 等

关于c# - 需要帮助找出为什么我的代码不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57867201/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com