IDebugGenericParamField::ConstraintCount
Retorna o número de restrições associadas a esse parâmetro genérico.
Sintaxe
Parâmetros
pcConst
[dentro, fora] Número de restrições associadas a este campo.
Valor de retorno
Se tiver êxito, retornará S_OK
. Caso contrário, retornará um código de erro.
Exemplo
O exemplo a seguir mostra como implementar esse método para um objeto CDebugGenericParamFieldType que expõe a interface IDebugGenericParamField .
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;
}