Pode object.GetHashCode () produzir resultados diferentes para os mesmos objetos (strings) em máquinas diferentes?
É possível um e o mesmo objeto, particularmente umstring
ou qualquer tipo primitivo ou muito simples (como umstruct
), para produzir valores diferentes de.GetHashCode()
quando invocado em máquinas diferente
Por exemplo, é possível para a expressão"Hello World".GetHashCode()
para produzir um valor diferente em uma máquina diferente. Estou solicitando principalmente C # .NET, mas suponho que isso possa se aplicar a Java ou mesmo a outras linguagen
Editar
Conforme indicado nas respostas e comentários abaixo, sabe-se que.GetHashCode()
pode ser overriden, e não há garantia para o resultado que ele produz entre versões diferentes da estrutura. Portanto, é importante esclarecer que tenho em mente tipos simples (que não podem ser herdados, portanto,GetHashCode()
ser substituído) e estou usando as mesmas versões da estrutura em todas as máquina