共用方式為


IDebugHostTypeSignature::IsMatch 方法 (dbgmodel.h)

IsMatch 方法會傳回特定類型實例是否符合類型簽章中指定的準則的指示。 如果這樣做,則會傳回此指示,以及列舉值,指出類型實例的所有特定部分 (為符號,) 符合類型簽章中的通配符。

語法

HRESULT IsMatch(
  IDebugHostType             *type,
  bool                       *isMatch,
  IDebugHostSymbolEnumerator **wildcardMatches
);

參數

type

要與型別簽章比較的類型實例。

isMatch

這裡會傳回類型實例是否符合類型簽章的指示。

wildcardMatches

如果類型實例符合類型簽章,則會在這裡傳回列舉值,以列舉類型實例的所有特定部分, (做為符號,) 符合類型簽章中的通配符。

傳回值

這個方法會傳回 HRESULT,指出成功或失敗。

備註

範例程式碼

ComPtr<IDebugHostSymbols> spSym; /* get the host's symbols interface */
ComPtr<IDebugHostType> spType;   /* get a type */

ComPtr<IDebugHostTypeSignature> spSig;
if (SUCCEEDED(spSym->CreateTypeSignature(L"MyTemplateType<*>", 
                                         nullptr, 
                                         &spSig)))
{
    bool isMatch;
    ComPtr<IDebugHostSymbolEnumerator> spWildcardEnum;
    if (SUCCEEDED(spSig->IsMatch(spType.get(), &isMatch, &spWildcardEnum)))
    {
        // isMatch will contain whether the type matches the signature (whether 
        // it is a MyTemplateType template with *ANY* template arguments
        if (isMatch)
        {
            // spWildcardEnum will contain what the '*' in 'MyTemplateType<*>' 
            // matched against.  This may be one or more template arguments in 
            // linear order.  An IDebugHostType would be present for type arguments.
        }
    }
}

規格需求

需求
標頭 dbgmodel.h

另請參閱

IDebugHostTypeSignature 介面