Compare

Listedeki belli bir bileşenin verilerini başka bir bileşenin verisi ile karşılaştırır.

virtual int  Compare(
   const CObject*  node,     // Karşılaştırılacak bileşenin işaretçisi
   const int       mode=0    // Karşılaştırma kipi
   ) const

Parametreler

node

[in]  Karşılaştırılacak liste bileşeninin işaretçisi

mode=0

[in]  Karşılaştırma kipi

Dönüş Değeri

Liste elemanlarının eşit olması durumunda 0, liste elemanı karşılaştırma elemanından daha küçükse -1, liste elemanı karşılaştırma elemanından daha büyükse 1.

Not

CObject sınıfındaki Compare () yöntemi her zaman 0 dönüşü yapar ve herhangi bir eylem gerçekleştirmez. Veri karşılaştırması yapmak istiyorsanız türetik sınıfların Compare (...) yöntemini kullanmalısınız. Ayrıca, 'mode' parametresi çok değişkenli karşılaştırmalar yaparken kullanılmalıdır.

Örnek:

//--- CObject::Compare(...) için bir örnek
#include <Object.mqh>
//---
void OnStart()
  {
   CObject *object_first,*object_second;
   //---
   object_first=new CObject;
   if(object_first==NULL)
     {
      printf("Nesne oluşturma hatası");
      return;
     }
   object_second=new CObject;
   if(object_second==NULL)
     {
      printf("Nesne oluşturma hatası");
      delete object_first;
      return;
     }
   //--- etkileşimi ayarla
   object_first.Next(object_second);
   object_second.Prev(object_first);
   //--- nesneleri karşılaştır
   int result=object_first.Compare(object_second);
   //--- nesneleri sil
   delete object_first;
   delete object_second;
  }