Método IDebugHostTypeSignature::IsMatch (dbgmodel.h)
El método IsMatch devuelve una indicación de si una instancia de tipo determinada coincide con los criterios especificados en la firma de tipo. Si lo hace, se devuelve una indicación de esto, así como un enumerador que indicará todas las partes específicas de la instancia de tipo (como símbolos) que coinciden con caracteres comodín en la firma de tipo.
Sintaxis
HRESULT IsMatch(
IDebugHostType *type,
bool *isMatch,
IDebugHostSymbolEnumerator **wildcardMatches
);
Parámetros
type
Instancia de tipo que se va a comparar con la firma de tipo.
isMatch
Indicación de si la instancia de tipo coincide con la firma de tipo se devuelve aquí.
wildcardMatches
Si la instancia de tipo coincide con la firma de tipo, se devolverá un enumerador aquí que enumerará todas las partes específicas de la instancia de tipo (como símbolos) que coinciden con caracteres comodín en la firma de tipo.
Valor devuelto
Este método devuelve HRESULT que indica éxito o error.
Comentarios
Código de ejemplo
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.
}
}
}
Requisitos
Requisito | Valor |
---|---|
Header | dbgmodel.h |