Что делает оператор / = в C #? - PullRequest
       32

Что делает оператор / = в C #?

7 голосов
/ 21 августа 2009

Что делает оператор / = в C # и когда он используется?

Ответы [ 7 ]

28 голосов
/ 21 августа 2009

Это разделяй и назначай. x /= n логически эквивалентно x = x / n.

7 голосов
/ 21 августа 2009

Это похоже на +=, -= или *=. Это ярлык для операции математического деления с заданием. Вместо того, чтобы делать

x = x / 10;

Вы можете получить тот же результат, выполнив

x /= 10;

Он присваивает результат исходной переменной после выполнения операции.

4 голосов
/ 21 августа 2009

В большинстве языков, вдохновленных C, ответ таков: разделяй и присваивай. То есть:

a /= b;

является сокращением для:

a = a / b;

LHS (a в моем примере) оценивается один раз. Это имеет значение, когда LHS является сложным, например, элемент из массива структур:

x[i].pqr /= 3;
2 голосов
/ 21 августа 2009

В следующем примере:

double value = 10;
value /= 2;

Значение будет иметь окончательное значение 5.

Оператор = / делит переменную на операнд (в данном случае 2) и сохраняет результат обратно в переменную.

2 голосов
/ 21 августа 2009

Подразделение и назначение:

a /= b;

совпадает с

a = (a / b);

Это просто сочетание двух операторов в одном.

2 голосов
/ 21 августа 2009

a /= 2; совпадает с a = a / 2;.

1 голос
/ 21 августа 2009
a /= b;

совпадает с

a = a / b;

Вот статья msdn об операторе.

...