System.Rtti.TRawVirtualClass
Delphi
TRawVirtualClass = class(TInterfacedObject, IInterface)
C++
class PASCALIMPLEMENTATION TRawVirtualClass : public System::TInterfacedObject
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
class | public | System.Rtti.pas System.Rtti.hpp |
System.Rtti | System.Rtti |
説明
インターフェイスを実装するインスタンスを動的に生成するための基礎を提供します。
TRawVirtualClass オブジェクトは、インターフェイスを実装するインスタンスを動的に生成するための基礎を提供します。このクラスに実装されているサポートはきわめて素朴です。仮想クラスのインスタンスを作成するには、その仮想クラスに VTable を渡します。VTable は、TRawVirtualClass のサブクラスとして定義されている特化した型です。VTable には、ユーザー コードにディスパッチされる小さいサンクを指すスロットが設定されます。
基本的な使用法は、VTable および、VTable と一致するインターフェイスの GUID のリストを指定して、仮想クラスのインスタンスを生成することです。したがって、複数の親を継承するように宣言されたインターフェイスの場合は、単一の VTable でそれぞれの親インターフェイスが表されます。
TRawVirtualClass ではインターフェイスの QueryInterface、AddRef、Release を実装しているため、インスタンスに問い合わせて、任意の Delphi インターフェイスとして使用できる Delphi インターフェイスを取得できます。