2

次のコード フラグメントがあるとします。

TMyType = Pointer;

TMyClass = class
    procedure myMethod (argument : TMyType);
end;

私は Rtti を使用してそのようなクラスを反映し、引数の型を含むメソッド シグネチャを書き出すことができます。ただし、これで Rtti を使用すると、次のようになります。

TMyClass = class
    procedure myMethod (argument : Pointer);
end;

つまり、TMyType という名前を取得する代わりに、Pointer を取得します。ParamType.name を使用して、引数の型の名前を取得しています。

私の質問は、開発者が実際に引数を宣言した型の名前、つまり TMyType を取得する方法はありますか? ParamType.name は期待される型名を返さないので、クラスで宣言されていない型には Rtti 情報がないと仮定していますか?

Delphi XE の使用

4

1 に答える 1

1

Sertac Akyuz と Remy Lebeau の両方が質問に答えました。以下に答えを示します。

エイリアスの代わりに型を宣言する TMytype = type Pointer

于 2013-05-26T17:22:54.433 に答える