小编Pia*_*33z的帖子

将哈希引用转换为数组引用

我想在perl中可以从散列中获取数组引用或将ref散列转换为ref数组!

例如 :

%trad = ('January','Jan','February','Feb');
$ref = \%trad;      # made a reference on hash
$ref2 = [%{$ref}];  # convert ref hash to ref array
Run Code Online (Sandbox Code Playgroud)

以其他方式我们可以写:

$ref2 = [%{\%trad}];
Run Code Online (Sandbox Code Playgroud)

但是这段代码是散列上的ref数组的错觉,因为contruction $ ref = [...]创建了一个对通过Perl复制哈希元素而创建的匿名数组的引用.

您可以通过尝试填充$ ref2指向的数组来查看,这对哈希没有影响!

有没有办法直接在内存区域直接操作哈希,使用真正的引用数组,如C中的cast方法!

arrays perl hash casting reference

-1
推荐指数
1
解决办法
540
查看次数

标签 统计

arrays ×1

casting ×1

hash ×1

perl ×1

reference ×1