Я читаю о Enums
и наткнулся на пример, в котором автор показал, как мы можем typecast
enum
к int
и int
к enum
. Однако я не получил, как мы можем изменить значение перечисления, создав ссылку типа TrickScore
.Изменить значение Enum
public enum TrickScore {
Sit = 7,
Beg = 25,
RollOver = 50,
Fetch = 10,
ComeHere = 5,
Speak = 30,
}
Этот блок кода изменяет значение Fetch
перечисления. Я не могу понять, как устанавливается балл TrickScore.Fetch
. Когда я звоню score.ToString()
, он возвращает Fetch
.
int value = (int)TrickScore.Fetch * 3;
MessageBox.Show(value.ToString());
TrickScore score = (TrickScore)value;
MessageBox.Show(score.ToString());
Нет [не] (https://dotnetfiddle.net/ZehC73). Он возвращает 'Speak', потому что' 10 * 3 = 30' и '30' - значение для' Speak'. Также, пожалуйста, не смешивайте счетчик с перечислением (enum). –
И, чтобы уточнить, значения в 'TrickScore' являются постоянными. Они не могут быть изменены, и вы не можете назначать им новые значения. То, что вы думаете, что вы делаете, на самом деле не происходит. –
Теперь я получил! – Insafian