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 :

Souci entre hash et array


Sujet :

Langage Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2007
    Messages : 3
    Par défaut Souci entre hash et array
    Bonjour a tous, je fais du perl depuis un petit mois et j'ai pas encore vraiment toute les connaissance

    en fait j'essaie d'inclure un array dans un hash
    $dfields->{'header'}->{'fields'} = @fields;
    Réponse : $VAR1 = { 'header' => { 'fields' => 50 } };
    mais quand je le met comme ca il ne me met que le nombre d'enregistrement dans le tableau et ca m'ennuierais de devoir tout repasser dans un autre tableau avec un $ pour pouvoir le faire marcher

    Merci d'avance

  2. #2
    Expert confirmé
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Par défaut
    Dans un hash comme dans un array, tu ne peux mettre que des scalaires, c'est à dire des string, des int ou des références. Ainsi pour faire des "tableaux à plusieurs dimensions" ou autres structures complexes, on met des références.
    Dans ton cas, ça donne ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $dfields->{header}{fields} = \@fields;
    \@fields est une référence vers @fields.
    Par contre méfie-toi, si tu modifies @fields par la suite, $dfields->{header}{fields} sera modifié aussi.
    Pour éviter ça, il faut créer une copie, une syntaxe efficace pour ce faire est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $dfields->{header}{fields} = [ @fields ];
    --
    Jedaï

Discussions similaires

  1. Soucis entre 2 tables
    Par nico341 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 15/11/2007, 19h54
  2. Souci entre mousePressed & mouseDragged
    Par ToTo13 dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 03/01/2007, 11h33
  3. [Tableaux] Comment ajouter/supprimer une entrée d'un array
    Par dessinateurttuyen dans le forum Langage
    Réponses: 7
    Dernier message: 09/08/2006, 16h05
  4. [D7] Tableau associatif (hash, associative array)?
    Par fredtheman dans le forum Delphi
    Réponses: 3
    Dernier message: 21/06/2006, 18h42
  5. [HASH de HASH de ARRAY]
    Par antigone dans le forum Langage
    Réponses: 7
    Dernier message: 31/08/2005, 18h01

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