我有一個實例變量,屬性,一個被定義和實例,像這樣:Perl的愁楚 - 分配並返回一個哈希
$self->{properties}{$key1} = $value;
我的理解,這將宣告屬性字段,並且也將其設置爲一個Hash基元,包含一個鍵值對。
我試圖寫的特性實例變量一個getter,將返回哈希:
sub getProperties{
my $self = shift;
my %myhash = $self->{properties};
return %myhash;
}
而且隨後致電像這樣,吸氣:
my %properties = $properties->getProperties();
當我嘗試編譯我得到:
"Odd number of elements in hash assignment at 70..."
line 70 being: my %myhash = $self->{properties};
非常感謝西蒙 – 2010-11-08 23:24:27
不客氣灰 - 好運與你的Perl! :) – 2010-11-08 23:29:11
西蒙,如果我返回像你說的哈希引用 - 我可以通過這樣做後來得到一個哈希引用? my%associations =%{$ properties-> getProperties()}; – 2010-11-08 23:49:56