即使使用正確的{$ METHODINFO}指令聲明瞭給定的類,GetPropInfo是否還有可能返回nil。
type
...
...
{$METHODINFO ON}
TMyClass = class
private
fField: integer;
published
property Field: integer read fField write fField;
end;
{$METHODINFO OFF}
...
...
procedure TestRTTI;
begin
assert(assigned(GetPropInfo(TMyClass, 'Field')), 'WTF! No RTTI found!');
end;
我遇到這個 「功能」 已經了。 順便說一句,打開完整的{$ METHODINFO ON}並不難,只要使用{$ TYPEINFO ON}或{$ M +}就足夠了。 – 2008-12-04 10:46:36