☆ネストしたクラス
確かに、細項目(TItem)、いくつかの細項目が集まった項目(TItems)とそれを管理するリスト(ITtemList)を 作ったときにきちんと注釈を入れておかないと、あとでどのような関係になっているのかわからなくなりますけどね。
ネストしないクラスの場合
type TItem1 = class(TObject); TItem2 = class(TObject); TItem3 = class(TObject); TItems = class private FItem1: TItem1; FItem2: TItem2; FItem3: TItem3; public constructor Create; destructor Destroy; override; end; TItemList = class private FList: TList; public constructor Create; destructor Destroy; override; end;
ネストしたクラスの場合
type TItemList = class private type TItems = class private type TItem1 = class(TObject); TItem2 = class(TObject); TItem3 = class(TObject); private FItem1: TItem1; FItem2: TItem2; FItem3: TItem3; public constructor Create; destructor Destroy; override; end; private FList: TList; public constructor Create; destructor Destroy; override; end;関係はわかりやすいけど、見た目ややこしくない?
今までのクラスを書き直すほど、魅力はないかな。
Nick Hodges
Did you know….
http://blogs.codegear.com/nickhodges/2007/10/03/38952
[参考]
CodeGear
Delphi 7以降の言語およびコンパイラの新機能
http://dn.codegear.com/jp/article/34409
| 固定リンク