爲了性能的原因,我想用懶惰的駝鹿對象替換我的程序中使用的一些散列。問題是,有很多我不控制的代碼,當然,使用->{key}
來訪問元素。這樣的訪問與工作對象的駝鹿,但他們被初始化之前不與懶惰的工作:作爲一個懶散列的駝鹿對象
package Stuff;
use Moose;
has foo => (
lazy=>1,
default=> sub { +{bar=>baz} }
);
package main;
my $x = Stuff->new();
print Dumper $x->{foo}; # undef =(
print Dumper $x->foo; # {bar => baz }
print Dumper $x->{foo}; # {bar => baz }
任何方式進行第一次$x->{foo}
初始化變量?
https://metacpan.org/pod/Tie::Moose似乎可能有用 – AKHolland
@AKHolland賓果!謹慎回答,以便我可以接受? – letitbee
將其更改爲答案表單。樂意效勞。 – AKHolland