Re: [問題] 如何從sub讀取hash of array的值
※ 引述《saka12 (saka)》之銘言:
: 現在卡在...當我<STDIN>之後,我不知道怎麼傳遞變數到sub之後,並得到該考試的value
: 我今天試了好久,也google了,可是還是卡在這裡,請大家幫幫忙,謝謝
新接觸 Perl 的人不知道 hash & array 的設計 XD
* 以下傳參數的方式對 my_function() 收到的資訊都一樣:
my_function($a, $b, $c, $d);
my_function($a => $b, $c, $d);
my_function($a => $b, $c => $d);
my_function($a, $b, $c => $d);
# 還有遲早會出事這招!XDDD
my_function($a, $b => $c, $d);
* 所以這個就見怪不怪了:
my @array = (1, 2 => 3, 4);
my %hash = @array;
# %hash 裡會是 (1 => 2, 3 => 4)
* 再來是 array 與 array reference:
my @array = (1, 2, 3, 4);
my $array_ref = [1, 2, 3, 4];
* 於是很多人會用力踩這個地雷:
my @array1 = (1, 2, 3);
my @array2 = (4, 5, 6);
my $array_of_array_WRONG = (@array1, @array2);
# (1, 2, 3, 4, 5, 6)
# 然後岔個題...
my $hash_ref = {@array1, @array2};
# {1 => 2, 3 => 4, 5 => 6},擺明就是... 爆 XD
my $array_of_array_CORRECT = (\@array1, \@array2);
# 在 Perl 裡實做 array of array 其實是實做 array of "array reference"
除了這己個比較特別的變數用法以外,其他的沒有很特別吧?
==
嗯,其實還有...
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.242.135.97
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):