Здравствуйте, Dimsk, Вы писали:
D>Правильно ли так?
D>
D>type
D>TFirstCOMClass = class(TAutoObject, ICustomInterface1)
D>....
D>function TSecondCOMClass.CreateFirstCOMClass:ICustomInterface1;
D>var objFirstClass:TFirstCOMClass;
D>begin
D> objFirstClass := TFirstCOMClass.Create; //корректно ли так делать ?
D> Result := objFirstClass As ICustomInterface1;
D>//objFirstClass.Free - когда вызывать
D>end;
Корректно. Но лучше:
function TSecondCOMClass.CreateFirstCOMClass:ICustomInterface1;
begin
Result := TFirstCOMClass.Create as ICustomInterface1;
//objFirstClass.Free - когда вызывать - никогда
end;
... << RSDN@Home 1.1.0 stable >>