如何克隆Class :: Struct?

时间:2017-04-05 06:47:14

标签: perl clone

我有一个Class::Struct的哈希值,如何克隆它(深层拷贝)? Class::Struct未提供clonecopy方法,并且手动复制Class::Struct的内部结构将很难。

my %a = ();

$a{k} = MyStruct->new;

my %b = ... ?

1 个答案:

答案 0 :(得分:3)

Storable模块提供了一个dclone函数,可以深层复制哈希值和Class::Struct内容。

use Storable qw/dclone/;

my %a = ();
$a{k} = MyStruct->new;

my %b =  %{dclone(\%a)};