state-machines- все статьи тега


C# переопределение метода GetHashCode

В этом примере плакат переопределил метод get hash code. Я понимаю, что это было сделано для того, чтобы обеспечить лучшее хэш-значение для возвращаемого объекта, уменьшить количество коллизий и, следовательно, уменьшить количество случаев, когда необходимо будет вызвать Equals(). Что я хотел бы знать, так это то, как был вычислен этот алгоритм: return 17 + 31 * CurrentState.GetHashCode() + 31 * Command.GetHashCode(); Есть ли какая-то особая причина, по которой были выбраны эти числа? Мог ...