Помислете за следното:
TFieldType = class
fValue: string;
end;
TMainClass = class
private
Ffield: TFieldType;
public
function GetValue: string;
end;
В TMainClass.GetValue се опитвам да получа стойности на полета на TMainClass:
function TMainClass.GetValue;
begin
vCtx := TRTTIContext.Create;
vType := vCtx.GetType(Self.ClassInfo);
for vField in vType.GetFields do
vField.GetValue(
//Here's the trouble, because i don't know how to get the instance
);
Може би има други начини за получаване на стойности на полета, които са екземпляри на други класове?