Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by Sir Rufo,
23. Feb 2015
@himitsu
Stimmt ... das const ist der Üpeltäter
program dp_184063;
{$APPTYPE CONSOLE}
{$R *.res}
uses
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by Sir Rufo,
23. Feb 2015
Es heisst ganz einfach:
Wenn ich eine Instanz erzeuge und das direkt als ein Argument/Parameter übergebe, dann springt der Referenzzähler nicht an.
IFoo = interface
procedure Bar;
end;
procedure foo( aFoo : IFoo );
begin
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by Sir Rufo,
23. Feb 2015
Mit diesen Querverbindungen hat es aber nichts zu tun.
Ursache ist einzig und allein, das hier foo( TFoo.Create );. Dabei wird nämlich kein RefCount erhöht!
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by Sir Rufo,
23. Feb 2015
So ist das:
TFoo = class( TInterfacedObject )
end;
procedure fooLeak( aInterface : IInterface );
begin
end;