Bonjour à tous,
Le titre est un peu compliqué mais mon pb est simple :
Dans le code précédant, je me fais renvoyer par le msg : [error] Can't use an undefined value as a HASH reference at..., normal car je veux faire un hash d'une référence qui n'est pas définie.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 use strict; my $toto; if (%$toto)
Et voici le code qui me pose des questions :
Cette fois, le keys me crée la référence sur mon hash, alors que j'aurais à priori penser qu'il m'enverrait la même erreur que précédemment.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 use strict; my $toto; foreach my $key (keys %$toto) { ... }
Du coup, je fais un if avant de faire mon foreach, mais j'aimerais connaitre la raison de laisser passer le %$toto (avec toto undef) quand il est utilisé par un keys...
Merci d'avance!
Partager