目次ページ  前ページ   次ページ

10. 幾何モデルのデータ構造の概説

10.3 幾何モデルで使うリストセル


10.3.4 食堂のお皿の使い方で理解する

 リストセルは、種々のデータを保存しますが、これを食堂で使う一定寸法のお皿でモデル化して考えると分かり易い説明ができます。新しいお皿は、食器棚に重ねて積み上げてあるとします。お皿には管理用の番号を付けておきます。初期状態は、一番上が1番、以下順に重ねてあります。お皿を使うときは、現在の状態で上から順に取り出します。使わなくなったお皿の返却は、上に載せて行きます。そうすると、最初に付けたお皿の管理番号順には重なりません。この使い方を食器棚から見れば、LIFO (last in first out:後入れ先出しと言います。何枚の皿を食器棚に用意しておくかが、リストセルの配列としての寸法予約に当たります。余裕を見て大目にお皿の枚数を用意しますが、多すぎるのも不経済です。作業用として準備したお皿が足りなくなったら、倉庫から取り出して追加ができるようにする処理が、C言語でのmalloc関数の利用に当たります。お皿は、食堂ではテーブル単位、お客単位の区別をします。ここではテーブル単位でお皿に盛り付ける料理の種類(リストセルの型)を区別した並べ方をします。これがポインタによる関連付けに当たると考えるとよいでしょう。
2008.10 橋梁&都市PROJECT

前ページ  次ページ