我正在尝试用perl编写一个包.我需要其中一个成员成为哈希.但是,当我引用并运行程序时,我无法使用通常的语法.如果我有:
sub new
{
my $class = shift;
my $self = {
textfile => shift,
placeholders => ()
};
bless $self, $class;
return $self;
}
Run Code Online (Sandbox Code Playgroud)
有没有办法让"占位符"成为我可以通过$ self - > {placeholders}访问的哈希?
谢谢
我希望能够将对象存储在哈希结构中,这样我就可以将对象的名称作为变量使用.有人可以帮我创建一个新的{...}例程来创建一个新对象作为哈希的成员吗?我不确定如何执行此操作或如何在像这样存储时引用和/或使用对象.我只是想能够使用并引用其他子程序的对象名称.
请参阅我的评论如何在Perl中获取对象的名称?为什么我想这样做.
谢谢
假设我按如下方式创建一个对象:
$object22=new somepackage("stuff");
Run Code Online (Sandbox Code Playgroud)
后来我想运行这样一个子程序:
$object22->somesubroutine();
Run Code Online (Sandbox Code Playgroud)
我想捕捉的子程序字符串"object22""somesubroutine." 我试过了:
$self=@_;
print $self;
Run Code Online (Sandbox Code Playgroud)
但那只是给了我 somepackage=HASH(somehexnumber)
请让我知道这是可能的,如果是什么代码是这样做的.