Dlaczego „397” jest używane do nadpisania ReSharper GetHashCode?
Podobnie jak wielu z was, używam ReSharper do przyspieszenia procesu rozwoju. Kiedy używasz go do nadpisania elementów równości klasy, gen kodu, który tworzy dla GetHashCode () wygląda tak:
<code> public override int GetHashCode() { unchecked { int result = (Key != null ? Key.GetHashCode() : 0); result = (result * 397) ^ (EditableProperty != null ? EditableProperty.GetHashCode() : 0); result = (result * 397) ^ ObjectId; return result; } } </code>
Oczywiście mam tam swoich własnych członków, ale chcę wiedzieć, dlaczego 397?
EDYCJA: Więc moje pytanie byłoby lepiej sformułowane, czy jest coś „specjalnego” w liczbie pierwszej 397 poza liczbą pierwszą?