2012-12-25から1日間の記事一覧

if(変数)をやってみた結果

perlでは負の値や空のレファレンスでもif(変数)でtrueと判断されてしまう。 my $one = 1; my $minus_one = -1; my $only_declare; my %empty_hash = (); my @empty_arr = (); my $empty_hash_ref = +{}; my $empty_array_ref = +[]; print "one\n" if $one; …

hashレファレンス内の変数を初期化すると…

hashレファレンス内の変数を初期化すると、その変数は切り離されてhashの中には元々の変数のコピーが残るようだ。言葉にするとややこしいが、こんな感じ。 use strict; # 空のハッシュを別のハッシュの中に入れる my $inner_hash = +{}; my $outer_hash = +{…