Metodo IDebugHostTypeSignature::IsMatch (dbgmodel.h)
Il metodo IsMatch restituisce un'indicazione del fatto che un'istanza di tipo specifica corrisponda ai criteri specificati nella firma del tipo. In tal caso, viene restituita un'indicazione di questo oggetto e un enumeratore che indicherà tutte le parti specifiche dell'istanza del tipo (come simboli) corrispondenti ai caratteri jolly nella firma del tipo.
Sintassi
HRESULT IsMatch(
IDebugHostType *type,
bool *isMatch,
IDebugHostSymbolEnumerator **wildcardMatches
);
Parametri
type
Istanza del tipo da confrontare con la firma del tipo.
isMatch
Indica se l'istanza di tipo corrisponde alla firma del tipo viene restituita qui.
wildcardMatches
Se l'istanza di tipo corrisponde alla firma del tipo, verrà restituito un enumeratore qui che enumera tutte le parti specifiche dell'istanza del tipo (come simboli) corrispondenti ai caratteri jolly nella firma del tipo.
Valore restituito
Questo metodo restituisce HRESULT che indica l'esito positivo o l'errore.
Commenti
Codice di esempio
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.
}
}
}
Requisiti
Requisito | Valore |
---|---|
Intestazione | dbgmodel.h |