リリース 0.2
1995年10月8日(日)
最初にしなければならないことは、単にリストやハッシュを使って、データ構造
のある1個の要素に、(アサインメント経由のように[such as via an assignment])、どのようにアクセスしたいのかはっきりさせることです。
あなたが配列やリンクリストやスタックやキューやデキュー(deque)を考えているのなら@ARRAY(配列)を使って下さい。レコードや構造体や検索テーブルを考えているなら%HASH(ハッシュ)を使って下さい。
一般的に興味を引く、もういくつかの助言
push @{ $a[3] }, @new_listpush $a[3], @new_list- foreach $k (keys %{ $h{"key"} }) { ... }
- foreach $k (keys $h{"key"}) { ... }
while ( <> ) {
@fields = split;
push @a, [ @fields ];
}
これは、通常参照をするには、バックスラッシュを使うのではなく、むしろ
[] や {}コンストラクターを使用するのだということを意味
しています。
例えば、これは 間違いです。!
while ( <> ) {
@fields = split;
push @a, \@fields;
}
これはCにおける以下の問題と同じです。
char a[100], *p[10], *somefunc();
for (i = 0; i < 10; i++) {
strcpy(a, somefunc(i));
p[i] = a;
}
この規則への例外は、再帰的データ構造を記述する場合や同一のレコードセット用に複数のキーインデクスを生成する場合です。
use strict と言っておくと助けになることがあります。
- $a[$i] = [ @list ]
- @ { $a[$i] } = @list
ご意見、ご要望は、
電子メールまたは
投稿にお願い致します。ホームページへ戻る。