gpt4 book ai didi

perl - 在使用("1"时,不能将字符串 "strict refs")用作HASH引用

转载 作者:行者123 更新时间:2023-12-04 17:34:32 24 4
gpt4 key购买 nike

我正在尝试检查哈希键是否存在,例如:

use warnings;
use strict;
use feature qw(say);
use Data::Dump qw(dump);

my $h={a=>1,b=>2};

dump($h);

if (exists $h->{a}{b}) {
say "Key exists.";
}
dump($h);

这给出了:
{ a => 1, b => 2 }
Can't use string ("1") as a HASH ref while "strict refs" in use at ./p.pl line 12.

此错误消息的原因是什么?

最佳答案

$h->{a}{b}表示$h->{a}的值为hashref,并且您想检查其 key b是否存在。

由于$h->{a}是简单的标量(1),因此不能用作hashref(use strict阻止它),因此消息Can't use string (“1”) as a HASH ref

关于perl - 在使用("1"时,不能将字符串 "strict refs")用作HASH引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26353990/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com