Bonjour tout le monde,
Comme le titre l'indique, j'ai un petit problème avec les références vers un hash lorsque je les passe en argument d'une fonction. Mon code est le suivant :
sub hash_machin
{
my $ref_hash={}; # Création d'un hash anonyme;
début boucle_remplissage_hash
{
.....
$$ref_hash{clé} = valeur # Boucle pour remplir mon hash;
.....
}
afficher_hash($ref_hash); # Appel de la routine qui affiche le hash
sub afficher_hash
{
my $ref = @_;
foreach ( keys %{$ref} ) {
print "cle : $_, valeur : $ref->{$_}";
}
Ce code me retourne une erreur (lors de l'exécution) qui est :
"Can't use string ("1") as a HASH ref while "strict refs" in use at ......."
D'après mes tests des différentes variable, la variable passée en argument $ref_hash et celle que je récupère dans affciher_hash ($ref) n'ont pas le même contenu !!!!
D'où vient l'erreur svp ? Merci pour votre aide.
Cordialement.
Partager