Condividi tramite


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 di 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 8, Windows 7, Windows Server 2012, Windows Server 2008 R2

Informazioni sulla versione

Versioni della libreria di base F#

Supportato in: 2,0, 4,0, portabile

Vedere anche

Riferimenti

Modulo Core.Operators (F#)

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