IDebugGenericParamField::ConstraintCountIDebugGenericParamField::ConstraintCount

Retourne le nombre de contraintes qui sont associés à ce paramètre générique.Returns the number of constraints that are associated with this generic parameter.

SyntaxeSyntax

HRESULT ConstraintCount(  
   ULONG32* pcConst  
);  
int ConstraintCount(  
   ref uint pcConst  
);  

ParamètresParameters

pcConst
[dans, out] Nombre de contraintes qui sont associés à ce champ.[in, out] Number of constraints that are associated with this field.

Valeur de retourReturn Value

En cas de réussite, retourne S_OK; sinon, retourne un code d’erreur.If successful, returns S_OK; otherwise, returns an error code.

ExempleExample

L’exemple suivant montre comment implémenter cette méthode pour un CDebugGenericParamFieldType objet qui expose la IDebugGenericParamField interface.The following example shows how to implement this method for a CDebugGenericParamFieldType object that exposes the IDebugGenericParamField interface.

HRESULT CDebugGenericParamFieldType::ConstraintCount(ULONG32* pcConst)  
{  
    HRESULT hr = S_OK;  
    CComPtr<IMetaDataImport> pMetadata;  
    CComPtr<IMetaDataImport2> pMetadata2;  
    HCORENUM hEnum = 0;  
    ULONG cConst = 0;  

    METHOD_ENTRY( CDebugGenericParamFieldType::ConstraintCount );  

    IfFalseGo(pcConst, E_INVALIDARG );  
    *pcConst = 0;  
    IfFailGo( m_spSH->GetMetadata( m_idModule, &pMetadata ) );  
    IfFailGo( pMetadata->QueryInterface(IID_IMetaDataImport2, (void**)&pMetadata2) );  
    IfFailGo( pMetadata2->EnumGenericParamConstraints( &hEnum,  
              m_tokParam,  
              NULL,  
              0,  
              &cConst) );  
    IfFailGo( pMetadata->CountEnum(hEnum, &cConst) );  
    pMetadata->CloseEnum(hEnum);  
    hEnum = NULL;  

    *pcConst = cConst;  

Error:  

    METHOD_EXIT( CDebugGenericParamFieldType::ConstraintCount, hr );  
    return hr;  
}  

Voir aussiSee Also

IDebugGenericParamFieldIDebugGenericParamField