请先看下面的代码。
#! /usr/bin/perl
package foo;
sub new {
my $pkg = shift;
my $self = {};
my $self->{_fd} = undef;
bless $self, $pkg;
return $self;
}
sub Setfd {
my $self = shift;
my $fd = shift;
$self_->{_fd} = $fd;
}
sub write {
my $self = shift;
print $self->{_fd} "hello word";
}
my $foo = new foo;
我的意图是使用哈希将文件句柄存储在一个类中。文件句柄一开始是未定义的,但可以通过调用 Setfd 函数来初始化。然后可以调用 write 将字符串“hello word”实际写入文件句柄指示的文件,假设文件句柄是成功“写入”打开的结果。
但是,perl 编译器只是抱怨“打印”行中有语法错误。你们中的任何人都可以告诉我这里有什么问题吗?提前致谢。