Re[6]: @(TMyClass.Create()) не работает
От: SergLA Украина  
Дата: 23.09.08 20:53
Оценка:
А еще можно написать

function XXX : TMyClass;
begin
Result := TMyClass.Create;
end;

А вообще вот это работает:
TMyObject1 = object
constructor create(AValue : Integer);
procedure hello;
private
FValue : Integer;
end;

TMyClass = class
procedure Hello;
end;

...

{ TMyObject1 }

constructor TMyObject1.create(AValue : Integer);
begin
FValue := AValue;
end;

procedure TMyObject1.hello;
begin
showMessage ('Hello from object' + inttostr(FValue));
end;

{ TMyClass }

procedure TMyClass.Hello;
begin
ShowMessage ('hello from class');
end;

procedure TForm1.Button1Click(Sender: TObject);
function XXX_1 : TMyObject1;
var p : TMyObject1;
begin
p.create(100);
Result := p;
end;
function XXX_2 : TMyClass;
begin
Result := TMyClass.Create;
end;
var pp : TMyObject1;
begin

pp := XXX_1;
pp.hello;

XXX_2.Hello;

end;
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.