IDebugHostTypeSignature::IsMatch-Methode (dbgmodel.h)
Die IsMatch-Methode gibt einen Hinweis darauf zurück, ob eine bestimmte Typinstanz den in der Typsignatur angegebenen Kriterien entspricht. Wenn dies der Fall ist, wird ein Hinweis darauf sowie ein Enumerator zurückgegeben, der alle spezifischen Teile der Typinstanz (als Symbole) angibt, die mit Wildcards in der Typsignatur übereinstimmen.
Syntax
HRESULT IsMatch(
IDebugHostType *type,
bool *isMatch,
IDebugHostSymbolEnumerator **wildcardMatches
);
Parameter
type
Die Typinstanz, die mit der Typsignatur verglichen werden soll.
isMatch
Ein Hinweis darauf, ob die Typinstanz mit der Typsignatur übereinstimmt, wird hier zurückgegeben.
wildcardMatches
Wenn die Typinstanz der Typsignatur entspricht, wird hier ein Enumerator zurückgegeben, der alle spezifischen Teile der Typinstanz (als Symbole) aufzählt, die mit Denkhaltern in der Typsignatur übereinstimmen.
Rückgabewert
Diese Methode gibt HRESULT zurück, das Erfolg oder Fehler angibt.
Bemerkungen
Beispielcode-
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.
}
}
}
Anforderungen
Anforderung | Wert |
---|---|
Header- | dbgmodel.h |