初めての Perl コンストラクターを作成していますが、このエラーが発生します。
Can't use string ("Managers::Toke::Interface") as a HASH ref while "strict refs" in use at
これが私のコンストラクタです。
package Managers::Toke::Interface;
use strict;
use warnings;
use Core::ReturnValue;
use Data::Dumper;
## Toke stands for "The Online Kilobyte Extractor"
sub new {
my( $class, $username, $useruuid, $bytesSent, $bytesReceived, $bytePosition ) = @_ ;
my $self = {
'username'=> $username,
'useruuid'=> $useruuid,
'bytesSent'=> $bytesSent,
'bytesReceived' => $bytesReceived,
'bytePosition' => $bytePosition,
'date' => $date,
};
return bless $self, $class;
}
sub explain {
my $self = shift;
return sprintf "Hi, I'm %s", $self->{'username'};
}
これを呼び出しているプログラムは次のとおりです。
my $return = Managers::Toke::Interface->new($username,
$uuid,
$receivedBytesToKB,
$sentBytesToKB,
$bytePosition) or die "$!";
$return = Managers::Toke::Interface->explain();
答えが明らかでないことを願っています、事前に感謝します。