Как изменить переменную вне использования таких операторов, как - или ++? - PullRequest
0 голосов
/ 04 мая 2019

Я новичок, пытающийся добавлять переменные друг к другу в Unity с помощью C #.Я пытаюсь создать симулятор фондового рынка, который позволит вам покупать акции с заранее установленной суммой денег.

Это сокращенная версия кода.Я впервые пытаюсь отредактировать или изменить переменную, и до сих пор ++ или -- отлично справляются с изменением моей переменной на одну цифру, но я хочу вычесть свою переменную из другой переменной.

/* this triggers when you buy a share, adding to your amount of shares 
   and subtracting a sum from your bank */

public void BuyGE()
{
    GE.GEstockamount++;
    Market.Bank - GE.Price;  /* this line is the one causing me trouble */
}

Ответы [ 2 ]

3 голосов
/ 04 мая 2019

Что вы хотите сделать, так это установить переменную в результате математической операции.В C # (и большинстве языков программирования) сначала выполняется операция, а затем присваивание.Это означает, что вы можете сделать это:

Market.Bank = Market.Bank - GE.Price;

Концептуально:

  1. принять текущее значение Market.Bank, вычесть текущее значение GE.Price и сохранить его во временномlocation
  2. Установите значение Market.Bank равным значению из временного местоположения

Это фундаментальная концепция в программировании, но для тех, кто программирует более чем оченьЗа короткое время легко забыть, что это то, чему нужно было научиться.Когда у вас есть концепция, вы даже не будете думать о ней, когда пишете код.Это станет почти автоматическим.

Как уже отмечали другие операторы += и -=.Это просто ярлыки для более явного утверждения, представленного здесь.Я решил не использовать их, чтобы сделать гораздо более ясным, что происходит.

2 голосов
/ 04 мая 2019

Чтобы добавить значение переменной в другое, введите

va1 += va2:

Чтобы вычесть значение переменной из другого, введите

va1 -= va2:
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...