首页 > 解决方案 > 我如何从不同的“公共无效”中堆叠相同的“int”?

问题描述

我正在尝试获得一个 int 值,我可以将其显示为我可以花费的“现金”,并且您可以通过按下按钮获得现金,但是当我在该按钮的“公共无效”中的“int”值中添加一些内容时它不会与另一个按钮的另一个“公共无效”的 int 值叠加,我是 C# 编码的新手,我不明白问题是什么,我不知道从哪里开始解决未知问题,所以我问你。(这是我的第一篇文章,所以我这样做时可能做错了)

我尝试了一些我不知道怎么说的不同的东西,但它们没有奏效。而且我没有找到任何对我有帮助的东西,或者关于这个问题的任何东西(也许我只是瞎了)

using UnityEngine;
using UnityEngine.UI;

public class Cash : MonoBehaviour
{

private int result;

public void Button1()
    {
        result = result + 1;
        scoreText.text = "Cash: " + result.ToString();
    }

public void Button2()
    {
        result = result + 5;
        scoreText.text = "Cash: " + result.ToString();
    }
}

(这不是整个脚本)我希望将两个“int”值加起来,如果我按下按钮 1,它会说“1”,然后当我按下按钮 2 时,它会说“6”,但它说“5”,当我再次按下第一个按钮时,它显示“2”

[工作解决方案:更改“private int result;” 到“静态int结果;” (斯瓦尔回答)]

标签: c#unity3dint

解决方案


这个问题由 Svarr 解决,他评论说“如果(我相信)@stuartd 和 @PeterA.Schneider 是对的,您可以通过将结果设为静态来解决您的问题。请记住,这与其说是一种解决方案,不如说是一种技巧 - 甚至如果无法创建多个 Cash 实例。”

这有效,所以我现在将此线程标记为已解决。(我不明白@stuartd 和@PeterA.Schneider 告诉我什么(因为我很愚蠢)所以我现在只提他们。

所以我所做的是我改变了“private int result;” 到“静态int结果;” 我的问题解决了


推荐阅读