gpt4 book ai didi

Perl 静态类属性

转载 作者:行者123 更新时间:2023-12-04 02:51:04 25 4
gpt4 key购买 nike

据我所知,创建类(包)的动态实例就像对 Perl 语法的一种破解(使用“bless”)。 Perl 不支持名为“class”的关键字;因此一切都是有限的。

Perl 导致 OOP 困难的第一个限制是创建静态类属性和静态类方法时。有什么解决办法吗?

最佳答案

对于类级变量,有两种常用的方法:

package Bar;
use strict;
use warnings;

sub new { bless {}, shift };

# (1) Use a lexical variable scoped at the file level,
# and provide access via a method.
my $foo = 123;
sub get_foo { $foo }

# (2) Use a package variable. Users will be able to get access via
# the fully qualified name ($Bar::fubb) or by importing the name (if
# your class exports it).
our $fubb = 456;

用法示例:
use Bar;

my $b = Bar->new;
print "$_\n" for $b->get_foo(), $Bar::fubb;

关于Perl 静态类属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5536784/

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