Método IDebugHostTypeSignature::IsMatch (dbgmodel.h)
O método IsMatch retorna uma indicação de se uma instância de tipo específico corresponde aos critérios especificados na assinatura de tipo. Se isso acontecer, uma indicação disso será retornada, bem como um enumerador que indicará todas as partes específicas da instância de tipo (como símbolos) que corresponderam a curingas na assinatura de tipo.
Sintaxe
HRESULT IsMatch(
IDebugHostType *type,
bool *isMatch,
IDebugHostSymbolEnumerator **wildcardMatches
);
Parâmetros
type
A instância de tipo a ser comparada com a assinatura de tipo.
isMatch
Uma indicação de se a instância de tipo corresponde à assinatura de tipo é retornada aqui.
wildcardMatches
Se a instância de tipo corresponder à assinatura de tipo, um enumerador será retornado aqui, o que enumerará todas as partes específicas da instância de tipo (como símbolos) que corresponderam a curingas na assinatura de tipo.
Retornar valor
Esse método retorna HRESULT que indica êxito ou falha.
Comentários
Código de exemplo
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 |
---|---|
Cabeçalho | dbgmodel.h |