はじめまして
いま、Delphi6でプログラムを作成している初心者の理恵です。
早速質問何ですけど、
ツリー構造のデータをTList型で作成しています。
でも、双方向リスト?みたいな形で、
作成して、データをツリー上にするのがリスト型を扱う場合一般的だと
聞いたのですが、やり方、考え方がさっぱりわかりません。
双方向リストを作成する際には、どうやるのかとか、こんな形でやるんだよ
みたいな、サンプルが載っている、URLをご存知のかた、もしくは、
やり方等をご存知の方おりましたら、教えてください。
宜しくお願いします。
TreeListViewを使いたいんでしょうか?
いろいろな使い方がありますけど、双方向リストとは
どのようなものをイメージされてますか?
双方向のリスト…というと、真っ先にTHashStringListあたりを思い浮かべますけど…。
ツリー状にして管理する必然性がないのなら、そっちのほうがいいと思います。
扱い方はTStringListなどと同じで、
a=b
という行があったら、
Values[Names['a']] で、bが得られるといった感じのものです。
Objectsプロパティもくっついてますから、拡張情報をいくらでもつけることができます。
(もちろんObjectsの中身のオブジェクトの分、重くなりますけど)
あとは、わたしはちょくちょくTMemIniFileに、ありえないファイルを指定して、
データ管理に使ってますけど、これはだめでしょうか?
うちの"おんぷ村倉庫">"コンポーネント">"TCmdInfoクラス"にて、
そういう使い方をしています。
ちなみに、双方向リストはツリーではありませんよ。
数珠状のデータ配列になります。
[リスト00]
[前:なし]
[次:01]
[リスト01]
[前:00]
[次:02]
[リスト02]
[前:01]
[次:03]
[リスト03]
[前:02]
[次:なし]
こういうデータリストを双方向リストと言います。
それぞれ、どういう順序でメモリ上に並んでいても、ある1カ所がわかれば、そこから両端を導く事ができ、そのデータの順序がわかります。
ただし、2つ隣のデータを知るには、順番にたどっていく必要があります。
もしかして、ツリー構造に持ちたいというのはBツリーなどのことでしょうか。
ツイート | ![]() |