gpt4 book ai didi

perl - 我应该在 Perl 中使用自动装箱吗?

转载 作者:行者123 更新时间:2023-12-03 23:29:08 25 4
gpt4 key购买 nike

对于那些不知道 Perl 的 autobox ,它是一个模块,它为您提供内置原语的方法,甚至可以覆盖它们。

# primitives
'a string'->toupper();
10->to(1); # returns [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]

# Arrays, array refs
[qw(A B C D E)]->for_each( sub { ... } );
@array->length()

# Hashes, hash refs
{ key => 'value', key2 => 'value2' }->values()
%hash->keys()

# Even specify your own base class...
use autobox SCALAR => 'Foo';

总体而言,它使内置类型的方法感觉更像对象,简化了一些任务并使其他任务看起来更明显。

然而...

autobox 文档说有 performance penalties ,一些不仅仅是简单地调用对象上的方法,远远超过标准语法。 And then, there's a few caveats about its use in eval s (specifically, string evals) that might, in some circumstances, cause issues.它看起来也不是许多 Perl 发行版的标准配置。

使用 autobox 真的值得吗?

最佳答案

嗯,你有没有希望有一个模块可以做 autobox在你发现 autobox 之前做?

如果答案是"is",那么您应该使用它。如果有机会,您可能还希望通过提交错误报告并修复它们来为其开发做出贡献。

不幸的是,我属于“很酷,但是……”的阵营,所以我无法为您提供更多见解。

关于perl - 我应该在 Perl 中使用自动装箱吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1521563/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com