Nom de Variable Dynamique [PERL] - Perl - Programmation
Marsh Posté le 21-11-2006 à 17:02:01
J'ai pas trop compris la question, mais il ne faut pas créer de noms de variables dynamiquement. En général, on utilise des tables de hachage à la place.
Peux-tu préciser la question et nous donner ton bout de code si tu as déjà un début ?
Marsh Posté le 21-11-2006 à 17:22:21
pareil pas tout compris.
Mais si tu utilises des reférences sur tes tableaux de hashage, je vois pas pourquoi tu aurais besoin de les nommer
Exemple:
Code :
|
Marsh Posté le 21-11-2006 à 18:06:58
anapajari a écrit : pareil pas tout compris.
|
Je traite un fichier texte.
Je lis une ligne structurée (qui correspond aux valeurs de mes clés de hashage)
J'ai çà dans une boucle while avec un index $i que j'utilise pour alimenter le tableau @tab
Code :
|
Pb quand je souhaite utiliser les indices pour consulter le tableau après.
$tab[0]->{cle1} me renvoit tjs la valeur pour le dernier indice $i.
Merci d'avance de votre aide.
Marsh Posté le 21-11-2006 à 19:07:51
et si tu fais :
Code :
|
ca marche pas ?
Marsh Posté le 21-11-2006 à 19:25:40
ça devrait marcher quand même ... j'en deduis que c'est pas ton "vrai" code et qu'il doit y avoir une boulette dans celui-ci!
Marsh Posté le 22-11-2006 à 10:53:20
anapajari a écrit : ça devrait marcher quand même ... j'en deduis que c'est pas ton "vrai" code et qu'il doit y avoir une boulette dans celui-ci! |
Ah tiens, je ne savais pas que la hash locale était recréée à chaque tour de boucle. Intuitivement j'aurais dit que c'était toujours la même hash qui était utilisée, donc que la référence ne changeait jamais... Merci pour les éclaircissements
Marsh Posté le 22-11-2006 à 11:08:04
En fait c'est logique puisque la portée de %hash est limité au while.
Par contre si %hash est déclarée hors du while, ça peut pas marcher.
Marsh Posté le 21-11-2006 à 14:30:16
Bonjour,
Je suis une débutante en langage PERL.
Je souhaiterai savoir comment avec un incrément $i créer des noms de variables dynamiquement.
Je me perds dans la syntaxe.
Ce serait pour utiliser des noms de tableaux de hashage % différents en référence \ dans un tableau @.
Je ne sais pas si je suis claire.
Merci d'avance.