System.Rtti.TRawVirtualClass.FindInterface
Delphi
function FindInterface(IID: TGUID): Pointer;
C++
void * __fastcall FindInterface(const GUID &IID);
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
function | public | System.Rtti.pas System.Rtti.hpp |
System.Rtti | TRawVirtualClass |
説明
指定された GUID に対するインターフェイス ポインタを検索し返します。
FindInterface は、このクラスに実際に追加された仮想インターフェイスである、インターフェイスへのポインタのみを返します。ローカルでインターフェイスが見つからなかった場合、継承バージョンへのデリゲートが行われますが、QueryInterface の完全なセマンティクスのフォローはしません。このインターフェイスは、インターフェイスに対して AddRef を呼び出すことなく、インターフェイスへの生のポインタを返すため、非常に特殊です。 これは非常に特殊なケースのオペレーションで、極端に端のクラスでのみ利便性があります。このポインタは AddRef が使用されていないため、結果の使用方法については非常に注意が必要です。そうでなければ、うっかりオブジェクトを解放してしまう可能性があります。
FindInterface は、インターフェイスがローカルで見つからなかった場合には nil
を返します。