我的自定义方法无法正常工作

本文关键字:工作 常工作 自定义方法 我的 | 更新日期: 2023-09-27 18:35:47

我有一点问题。点击按钮后,我想买东西。

private void btnBuyLemonade_Click(object sender, EventArgs e)
        {
            BuyBuildings(lemonadeFactory, money, lemonadeFactoryPrice);
        }

那么我有类似这种方法的东西

private void BuyBuildings(int buildingName, double _money, double buildingNamePrice)
        {
            buildingName++;
            _money -= lemonadeFactoryPrice;
            buildingNamePrice *= 1.8;
        }

但它不起作用,正如您可能知道的那样。我应该怎么做/读才能正确写入它。Ofc 我想增加柠檬水工厂建筑的数量 1,将其价格乘以 1.8,然后从我的钱中减去柠檬水工厂价格。

我的自定义方法无法正常工作

你的问题是在 C# 中,基元类型(如 intdouble 等)是按值传递的。因此,当您在方法中对它们进行操作时,它实际上是在更改这些变量的副本。如果这些是类级变量,则可以更改它们而不将它们作为参数传递,例如:

private void BuyBuildings()
        {
            buildingName++;
            _money -= lemonadeFactoryPrice;
            buildingNamePrice *= 1.8;
        }