しかし、singletonパターンを使えば、最初に必要になった時に
生成されるようにも作れるよ。実際ScreenやPrinterオブジェクトは
こんな風な書き方で利用者が生成・破棄のタイミングを考えなくても
いいようにしてある。

interface

function MyClass: TMyCLass;

implementation

var
 instance: TMyClass;

function MyClass: TMyCLass;
begin
 if instance = nil then
  instance := TMyClass.Create;
 Result := instance;
end

finalization
 if instance <> nil then
  instance.Free;