加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

在Perl中,当’use strict’打开时,如何将Tie :: IxHash与字典一

发布时间:2020-12-15 21:44:38 所属栏目:大数据 来源:网络整理
导读:我正在尝试创建一个保留添加键的顺序的哈希.在 this page的“创建哈希并保留添加顺序”部分下,它提供了一个修改哈希的片段,因此当您执行键时,它会按照您将它们插入哈希的顺序返回键. 当我执行以下代码段时: use strict;our %foo;use Tie::IxHash;tie (%foo,
我正在尝试创建一个保留添加键的顺序的哈希.在 this page的“创建哈希并保留添加顺序”部分下,它提供了一个修改哈希的片段,因此当您执行键时,它会按照您将它们插入哈希的顺序返回键.

当我执行以下代码段时:

use strict;
our %foo;
use Tie::IxHash;
tie (%foo,Tie::IxHash);

它失败了:

Bareword "Tie::IxHash" not allowed while "strict subs" in use at /nfs/pdx/home/rbroger1/tmp.pl line 4.
Execution of /nfs/pdx/home/rbroger1/tmp.pl aborted due to compilation errors.

当use strict打开时,如何让Tie :: IxHash工作?

dsolimano的例子有效.

use strict;
our %foo;
use Tie::IxHash;
tie (%foo,"Tie::IxHash");

$foo{c} = 3;
$foo{b} = 2;
$foo{a} = 1;

print keys(%foo);

打印:

cba

没有领带…… Tie :: IxHash这是它

cab

解决方法

tie的第二个参数是一个字符串,所以试试吧
use strict;
our %foo;
use Tie::IxHash;
tie (%foo,'Tie::IxHash');

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读