Markieren Sie das Kontrollkästchen Englisch, um die englische Version dieses Artikels anzuzeigen. Sie können den englischen Text auch in einem Popup-Fenster einblenden, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch
Diese Dokumentation wurde archiviert und wird nicht länger gepflegt.

ValueType.GetHashCode-Methode

Gibt den Hashcode für diese Instanz zurück.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

public override int GetHashCode()

Rückgabewert

Typ: System.Int32
Eine 32-Bit-Ganzzahl mit Vorzeichen. Diese ist der Hashcode für die Instanz.

Die GetHashCode-Methode gilt für Typen, die von ValueType abgeleitet wurden. Eines oder mehrere Felder des abgeleiteten Typs werden verwendet, um den Rückgabewert zu berechnen. Wenn die GetHashCode-Methode des abgeleiteten Typs aufgerufen wird, eignet sich der Rückgabewert wahrscheinlich nicht für die Verwendung als Schlüssel in einer Hashtabelle. Wenn sich der Wert eines oder mehrerer dieser Felder ändert, eignet sich der Rückgabewert möglicherweise auch nicht mehr für die Verwendung als Schlüssel in einer Hashtabelle. Schreiben Sie in jedem Fall eine eigene Implementierung der GetHashCode-Methode, die das Konzept eines Hashcodes für den Typ genauer darstellt.

Weitere Informationen finden Sie unter Object.GetHashCode und System.Collections.Hashtable.

Im folgenden Beispiel wird veranschaulicht, wie die GetHashCode-Methode mit einem abgeleiteten Werttyp überschrieben werden kann.


	public struct Complex 
	{
		public double m_Re;
		public double m_Im;

		public override bool Equals( object ob ){
			if( ob is Complex ) {
				Complex c = (Complex) ob;
				return m_Re==c.m_Re && m_Im==c.m_Im;
			}
			else {
				return false;
			}
		}

		public override int GetHashCode(){
			return m_Re.GetHashCode() ^ m_Im.GetHashCode();
		}
	}


.NET Framework

Unterstützt in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Unterstützt in:

Windows 7, Windows Vista SP1 oder höher, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core wird nicht unterstützt), Windows Server 2008 R2 (Server Core wird mit SP1 oder höher unterstützt), Windows Server 2003 SP2

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Anzeigen: