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

Langage Perl Discussion :

[langage] [PERL] problème de hash


Sujet :

Langage Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    801
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 801
    Par défaut [langage] [PERL] problème de hash
    Bonjour à tous,

    J'ai un problème !

    Si je veux retourner (d'une fonction) un hash qui contient un hash.
    Comment dois-je m'y prendre ? Faut il passer par les références de hash ?
    j'ai l'impression que ce que je retourne s'écrase ...

    Exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
    $myHash = &function1();
     
     
    sub function1
    {
          $hash1{$var1}{$var2} = $hash2;
          return \%hash1;
    }
    où $hash2 est une référence à un autre hash


    Comment je fais pour accéder aux différentes valeurs de %{$myHash}

  2. #2
    Membre Expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 603
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2003
    Messages : 1 603
    Par défaut
    Je ne me suis pas penché sérieusement sur ton problème mais je vois 2 return dans ta fonction et ça me choque

    M'est avis que le deuxième return n'arrivera jamais

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    801
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 801
    Par défaut
    Oui en effet !
    je me suis trompé en tapant l'exemple ...

    Je corrige

  4. #4
    Membre Expert
    Avatar de Woufeil
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    1 076
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 1 076
    Par défaut
    Bonjour,

    Pour manipuler myhash, utilise l'opérateur ->. Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    print "%{$myhash->{$var1}->{$var2}}";
    Si tu as des problèmes pour visualiser la tête de ta structure, utilise le module Data:: Dumper

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    801
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 801
    Par défaut
    Merci Woufeil !!
    ça marche !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [langage] Perl débutant
    Par mrbungle dans le forum Langage
    Réponses: 4
    Dernier message: 10/11/2004, 16h37
  2. [langage] perl script pour balancer un B-arbre
    Par RonMaster dans le forum Langage
    Réponses: 5
    Dernier message: 22/10/2004, 17h35
  3. Réponses: 2
    Dernier message: 16/07/2004, 19h31
  4. Réponses: 5
    Dernier message: 08/07/2004, 19h57
  5. [langage] Perl en Stand alone ?
    Par lasconic dans le forum Langage
    Réponses: 2
    Dernier message: 18/02/2004, 10h19

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