私はこのような関数へのポインタを持っています。functionpointerからfunctionnameを取得しますか?
TTestEvent = function(): Boolean;
procedure ExecuteTest(aTest: TTestEvent; aType: String);
begin
if aTest then
NotifyLog(aType + ' success')
else
TestError(aType + ' failed');
end;
// Call the test
procedure TestAll;
begin
ExecuteTest(LoadParcels, 'LoadParcel');
end;
しかし、functionpointer aTestから関数の名前を抽出する方が良いでしょう。
ので、代わりの
aType + ' success'
私が欲しい
ExtractName(aTest) + ' success'
のようなものは、これは、デルファイ、2007年に行われることができますか?
属性を使用するのに適しています。 – Pol
@Pol:高度なRtti機能を実装している最新のDelphiバージョンでのみ有効です。 – menjaraz
私は単純なものがほしいだけです。だから私はJCLDebugまたはMadExceptを使用しない限り不可能です。 –