IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Caml Discussion :

Utilisation de Hashtbl.make


Sujet :

Caml

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 70
    Points : 53
    Points
    53
    Par défaut Utilisation de Hashtbl.make
    Bonjour,

    Je cherche à utiliser Hashtbl.make pour faire un module de table associative.

    Je l'ai déjà fait avec le type suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    type ('key, 'value) table = ('key, 'value) Hashtbl.t;;
    Voici la signature du module
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    module type ASSOC =
    sig
      type ('a, 'b) table
      val create : unit -> ('a, 'b) table
      val find : ('a, 'b) table -> 'a -> 'b option
      val add : ('a, 'b) table -> 'a -> 'b -> unit
    end


    Mais je ne comprends pas trop l'utilisation du .make



    merci

  2. #2
    Membre éprouvé
    Avatar de Cacophrene
    Homme Profil pro
    Biologiste
    Inscrit en
    Janvier 2009
    Messages
    535
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Biologiste

    Informations forums :
    Inscription : Janvier 2009
    Messages : 535
    Points : 1 125
    Points
    1 125
    Par défaut
    Bonsoir,

    Le module Hashtbl d'OCaml propose deux manières d'utiliser les tables de hachage : une méthode directe avec les fonctions telles que Hashtbl.create, et une méthode qui passe par l'utilisation d'un foncteur, en l'occurrence Hashtbl.Make. Un exemple d'utilisation du foncteur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    module HashedInt =
      struct
        type t = int
        let equal = ( = )
        let hash = Hashtbl.hash
      end
    
    module IntHtbl = Hashtbl.Make(HashedInt)
    Le module IntHtbl ainsi créé possède la signature Hashtbl.S avec IntHtbl.key = HashedInt.t = int.


    Cordialement,
    Cacophrène

Discussions similaires

  1. utilisation de Hashtbl
    Par daronmaster dans le forum Caml
    Réponses: 5
    Dernier message: 26/11/2007, 22h51
  2. [UBUNTU] Impossible d'utiliser la commande make
    Par guigui_cosmos dans le forum Ubuntu
    Réponses: 12
    Dernier message: 13/04/2007, 15h25
  3. Réponses: 5
    Dernier message: 03/10/2006, 12h53
  4. utiliser le make.exe de BC++5
    Par SOPRA-Eherve dans le forum Systèmes de compilation
    Réponses: 1
    Dernier message: 11/05/2006, 20h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo