+ -
当前位置:首页 → 问答吧 → 散列复制的问题

散列复制的问题

时间:2011-02-06

来源:互联网

我现在看到一些代码。代码的功能是递归复制散列中的内容。如果遇到是散列中的值是散列的引用,则不是简单复制该引用。而是新生成一个引用,然后把引用对应的值递归复制到新的引用中去。

最终声生成的散列,内容和旧的散列是相同但是独立的,也就是说值为引用的时候,引用的地址是不一样的。不知道我有没有表达清楚。

我想问得是有没有现成的包提供这样的操作?

作者: zhuyubei   发布时间: 2011-02-06

我的意思就是散列的深拷贝。我感觉这个操作应该也是有着较为普遍的需求,不知道有没有对应的包?

作者: zhuyubei   发布时间: 2011-02-06

好吧。我找到了。

use Storable;
my $d = dclone(\%yourhash);

看来在perl里重新发明轮子的情况的确是不少。

作者: zhuyubei   发布时间: 2011-02-06

应该是在Perl的世界里,需要重新发明轮子的机会是越来越少了。

作者: wxlfh   发布时间: 2011-02-06

猜也可以猜到有个模块叫做 Clone 吧

作者: zhlong8   发布时间: 2011-02-06