くだすれDelphi(超初 ..
[2ch|▼Menu]
76:デフォルトの名無しさん
08/11/12 20:28:40
以下のinterfaceを使ったコードにおいて、メモリーリークが発生するのですが、対処法はありませんでしょうか?
こちらのdSpec URLリンク(delphixtreme.com) で同様のコードがありどうしたものかと困っております。

program circular_reference;
{$APPTYPE CONSOLE}
uses SysUtils, Classes;
type
  ITest = interface
    ['{38C68C6A-7CBD-42FE-9249-0ED869119A29}']
    procedure Foo;
  end;

  TTest = class;
  TSubTest = class
    FTest: ITest;
  public
    constructor Create(NewTest: ITest);
    destructor Destroy; override;
  end;

  TTest = class(TInterfacedObject, ITest)
    FSubTest: TSubTest;
  public
    constructor Create;
    destructor Destroy; override;
    procedure Foo;
  end;

procedure CallFoo(Test: ITest);
begin
  if Assigned(Test) then Test.Foo;
end;


次ページ
続きを表示
1を表示
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

4250日前に更新/151 KB
担当:undef