Operators.hash<'T>-Funktion (F#)
Eine generische Hashfunktion zur Rückgabe gleicher Hashwerte für Elemente, die gemäß dem Operator = gleich sind. Standardmäßig wird strukturelles Hashing für Union-, Datensatz- und Tupeltypen von F# verwendet, und der vollständige Inhalt des Typs wird gehasht. Das genaue Verhalten der Funktion kann für jeden Typ angepasst werden, indem GetHashCode für jeden Typ implementiert wird.
Namespace/Modulpfad: Microsoft.FSharp.Core.Operators
Assembly: FSharp.Core (in FSharp.Core.dll)
// Signature:
hash : 'T -> int (requires equality)
// Usage:
hash obj
Parameter
obj
Typ: 'TDas Eingabeobjekt.
Rückgabewert
Der errechnete Hash.
Hinweise
Der Name dieser Funktion in kompilierten Assemblys lautet Hash. Verwenden Sie diesen Namen, wenn Sie in einer anderen .NET-Sprache als F# oder durch Reflektion auf die Funktion zugreifen.
Beispiel
In den folgenden Beispielen wird die Verwendung der Hashfunktion zum Erstellen von Hashs für eine Vielzahl von Datentypen veranschaulicht.
let show a = printfn "hash(%A) : %d" a (hash a)
show 1;
show 2;
show "1"
show "2"
show "abb"
show "aBc" // case-sensitive
show None;
show (Some 1);
show (Some 0);
show [1;2;3];
show [1;2;3;4;5;6;7;8];
show [1;2;3;4;5;6;7;8;9;10;11];
show [1;2;3;4;5;6;7;8;9;10;11;12;13;14;15]
Plattformen
Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2
Versionsinformationen
F#-Kern-Bibliotheks-Versionen
Unterstützt in: 2,0, 4,0, portablen