Funzione Operators.hash<'T> (F#)

Una funzione hash generica, progettata per restituire valori hash uguali per elementi che risultano uguali in base all'operatore =. Per impostazione predefinita, la funzione utilizzerà l'algoritmo di hash strutturale per i tipi F# unione, record e tupla, eseguendo l'hashing del contenuto completo del tipo. È possibile regolare il comportamento esatto della funzione tipo per tipo implementando la funzione GetHashCode per ogni tipo.

Percorso spazio dei nomi/modulo: Microsoft.FSharp.Core.Operators

Assembly: FSharp.Core (in FSharp.Core.dll)

// Signature:
hash : 'T -> int (requires equality)

// Usage:
hash obj

Parametri

  • obj
    Tipo: 'T

    Oggetto di input.

Valore restituito

Valore hash calcolato.

Note

Questa funzione è denominata Hash negli assembly compilati. Utilizzare questo nome se si accede alla funzione da un linguaggio diverso da F# o tramite reflection.

Esempio

Negli esempi riportati di seguito viene illustrato l'utilizzo della funzione hash per generare hash per diversi tipi di dati.

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]
  

Piattaforme

Windows 7, Windows Vista SP2, Windows XP SP3, Windows XP x64 SP2, Windows Server 2008 R2, Windows Server 2008 SP2, Windows Server 2003 SP2.

Informazioni sulla versione

F# Runtime

Supportato in: 2.0, 4.0

Silverlight

Supportato in: 3

Vedere anche

Riferimenti

Modulo Core.Operators (F#)

Spazio dei nomi Microsoft.FSharp.Core (F#)