Neinicializovane klice hashe

Ondrej Koala Vacha koala na vju.cz
Úterý Duben 27 20:07:52 MEST 2004


On Tue, 27 Apr 2004, Honza Pazdziora wrote:

> package Foo;
> use fields ( "a", "b" );
> sub new { new fields shift }
>
> package main;
> my Foo $bar = new Foo;
> $bar->{"a"} = 10;
> print $bar->{"a"}, "\n";
> print $bar->{"x"}, "\n";
> __END__
>

Diky. Da se nejak obejit skutecnost, ze v kontrolovanem baliku mam volani
procedur, jako treba $bar->mm()? Pridat je proste do baliku Foo nepomaha,
napise to:

Can't locate object method "mm" via package "fields" at nn1.pl line 10.

nn1.pl vypada takto:

package Foo;
use fields ( "a", "b" );
sub new { new fields shift }
sub mm {}

package main;
my Foo $bar = new Foo;
$bar->{"a"} = 10;
$bar->mm();
print $bar->{"a"}, "\n";
print $bar->{"x"}, "\n";


--
Ondrej Koala Vacha


Další informace o konferenci Perl