Bonjour à tous,

Le titre est un peu compliqué mais mon pb est simple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
use strict;
my $toto;
if (%$toto)
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.

Et voici le code qui me pose des questions :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
use strict;
my $toto;
foreach my $key (keys %$toto) {
...
}
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.

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!