Compare

Compara o item de dados na lista com dados sobre outro elemento da lista.

virtual int  Compare(
   const CObject*  node,     // Node to compare with
   const int       mode=0    // Compare mode
   ) const

Parâmetros

node

[in]  Ponteiro para um item da lista a comparar

mode=0

[in]  Comparação de Variante

Valor do Retorno

0 - no caso dos itens da lista serem iguais, -1 - se o item da lista é menor do que o item na lista a comparar (nó), 1 - se o item da lista de maior do que o item na lista a comparar (nó).

Observação

Método Compare () na classe CObject sempre retorna 0 e não executa qualquer ação. Se você quiser comparar dados de classe derivada, o método Compare (...) deve ser implementado. O parâmetro de modo deve ser usado quando implementação for comparação multivariada.

Exemplo

//--- example for CObject::Compare(...)
#include <Object.mqh>
//---
void OnStart()
  {
   CObject *object_first,*object_second;
   //---
   object_first=new CObject;
   if(object_first==NULL)
     {
      printf("Object create error");
      return;
     }
   object_second=new CObject;
   if(object_second==NULL)
     {
      printf("Object create error");
      delete object_first;
      return;
     }
   //--- set interconnect
   object_first.Next(object_second);
   object_second.Prev(object_first);
   //--- compare objects
   int result=object_first.Compare(object_second);
   //--- delete objects
   delete object_first;
   delete object_second;
  }