如果多次访问非普通变量,有必要用临时变量暂存吗?

如果多次访问非普通变量,有必要用临时变量暂存吗?

$datac{$curr_ID}{start}=$$item_ref{start} if $datac{$curr_ID}{start} > $$item_ref{start};
在一个大循环内有这么一句,有必要把$$item_ref{start}和datac{$curr_ID}{start}给个临时变量吗?
由于循环次数比较多,想能优化就优化下。

如果不是用hash of hash,而是用基于use Class::Struct;的结构变量,访问速度差几倍,那时应该会有必要吧?

另外,看一个数是否比新值小,把小的值保存下来,用$old=$new if $old<$new是最快的办法吗?感觉用三目操作符效率是一样的。
建议用变量把他们存起来..
对perl来说...每次都要读好几次reference才会找到你所要的变量..
当然也可以把他们用perlcc compile或用eval {};包起来...
.速度会比较快...