Partager via


Méthode IDebugHostTypeSignature ::IsMatch (dbgmodel.h)

La méthode IsMatch retourne une indication indiquant si un type particulier instance correspond aux critères spécifiés dans la signature de type. Si c’est le cas, une indication de ceci est retournée, ainsi qu’un énumérateur qui indique toutes les parties spécifiques du type instance (en tant que symboles) qui correspondent aux caractères génériques dans la signature de type.

Syntaxe

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

Paramètres

type

Type instance à comparer à la signature de type.

isMatch

Une indication indiquant si le type instance correspond à la signature de type est retournée ici.

wildcardMatches

Si le type instance correspond à la signature de type, un énumérateur est retourné ici pour énumérer toutes les parties spécifiques du type instance (sous forme de symboles) qui correspondent aux caractères génériques dans la signature de type.

Valeur retournée

Cette méthode retourne HRESULT qui indique la réussite ou l’échec.

Remarques

Exemple de Code

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.
        }
    }
}

Configuration requise

Condition requise Valeur
En-tête dbgmodel.h

Voir aussi

Interface IDebugHostTypeSignature