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

我应该更喜欢Perl中的散列或散列表

发布时间:2020-12-15 22:00:30 所属栏目:大数据 来源:网络整理
导读:我还在学习perl 对于我来说,引用散列而不是直接访问它们感觉更“自然”,因为它更容易传递对子的引用(可以传递一个变量而不是列表).一般来说,我喜欢这种方法,即直接访问%散列的方法. 问题是,在哪里(在什么情况下)更好地使用普通的%散列,所以 $hash{key} = $
我还在学习perl

对于我来说,引用散列而不是直接访问它们感觉更“自然”,因为它更容易传递对子的引用(可以传递一个变量而不是列表).一般来说,我喜欢这种方法,即直接访问%散列的方法.

问题是,在哪里(在什么情况下)更好地使用普通的%散列,所以

$hash{key} = $value;

代替

$href->{key} = $value

是否有任何速度,或任何其他“事情”谁更喜欢使用%散列,而不是$hashrefs?或者只是纯粹的个人品味和TIMTOWTDI?一些例子,何时更好地使用%hash?

解决方法

我认为这样的问题是非常合法的:Perl或C等编程语言已经走了很长的路,积累了大量的历史行李,但人们通常会从历史的同步曝光中学习.因此,他们不禁想知道为什么TIMTOWDI和WTF都是这些选择,什么是更好的,应该是什么?

所以,在版本5之前,Perl没有引用.它只有值类型.参考文献是Perl 4的附件,可以编写更多的内容.必须保留价值类型,当然要保持向后兼容性;并且为了简单起见,因为经常你不需要引用的间接.

回答你的问题:

不要浪费时间考虑Perl哈希列表的速度.他们很快它们是内存访问.访问数据库或文件系统或网络,这就是程序通常花费时间的地方.

在理论上,一个引用的操作应该花费一点时间,所以不要紧.

如果你好奇,那么benchmark.不要从分歧中得出太多的结论,你可能会看到.在另一个版本中,事情可能会有所不同.

所以没有速度的理由来支持对价值类型的引用,反之亦然.

还有其他原因吗我会说这是一个风格和品位的问题.就个人而言,我更喜欢语法 – >存取.

(编辑:李大同)

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

    推荐文章
      热点阅读