Método IModelObject::Compare (dbgmodel.h)
El método Compare compara dos objetos de modelo y devuelve una indicación de cómo se relacionan esos objetos. Se devuelve uno de tres estados:
< 0: (this < other)
== 0: (this == other)
> 0: (this > other)
Tenga en cuenta que solo se pueden comparar valores intrínsecos mediante este método. Si se llama con cualquier otro tipo de objeto, se producirá un error.
Sintaxis
HRESULT Compare(
IModelObject *other,
IModelObject **ppResult
);
Parámetros
other
Objeto al que se va a comparar este objeto. El objeto de instancia está en el lado izquierdo de la comparación y el objeto proporcionado por este argumento está a la derecha.
ppResult
El resultado de la comparación se devuelve aquí. Si es menor que cero, este < otro; si es igual a cero, este == otro; si es mayor que cero, este > otro.
Valor devuelto
Este método devuelve HRESULT que indica éxito o error.
Comentarios
Ejemplo de código
ComPtr<IModelObject> spValue1; /* get some ordinal */
ComPtr<IModelObject> spValue2; /* get some other ordinal */
ComPtr<IModelObject> spResult;
if (SUCCEEDED(spValue1->Compare(spValue2.Get(), &spResult)))
{
VARIANT vtVal;
if (SUCCEEDED(spResult->GetIntrinsicValueAs(VT_I4, &vtVal)))
{
int compVal = vtVal.lVal;
// compVal < 0 : spValue1 < spValue2
// compVal == 0: spValue1 == spValue2
// compVal > 0 : spValue1 > spValue2
}
}
Requisitos
Requisito | Valor |
---|---|
Header | dbgmodel.h |