Hatalar, hatalar, sorular - sayfa 1429

 
Vladimir Pastushak :

İşlev aşırı yüklemesi

...sırada ne var?
 
Joo Zepper :
...sırada ne var?

İzin verilmeyen iki özdeş yöntem bildirdiniz; aşırı yük durumunda, yöntemler bir dizi dahili parametre ile birbirinden farklı olmalıdır.

 class C_A
{
   void B( int a);
   void B( double a);
};
 
Vladimir Pastushak :

İzin verilmeyen iki özdeş yöntem bildirdiniz; aşırı yük durumunda, yöntemler bir dizi dahili parametre ile birbirinden farklı olmalıdır.

Aşırı yükün farkındayım. Ancak bu başka bir şeyle ilgiliydi - ME derleyicisi, konsol derleyicisinin aksine hataları fark etmez.
 
Joo Zepper :
Aşırı yükün farkındayım. Ancak bu başka bir şeyle ilgiliydi - ME derleyicisi, konsol derleyicisinin aksine hataları fark etmez.
Evet, onaylıyorum, aynı şeyi fark ettim.
 
Joo Zepper :
Aşırı yükün farkındayım. Ancak bu başka bir şeyle ilgiliydi - ME derleyicisi, konsol derleyicisinin aksine hataları fark etmez.
Bu yöntemin gövdesini bildirene kadar hatayı fark etmez. Yani programların yürütülmesini etkilemez.
 
Ilya Malev :
Bu işlevin gövdesini bildirene kadar hatayı fark etmez. Yani programların yürütülmesini etkilemez.
ancak bu, ME derleyicisinin davranışını düzeltmeye gerek olmadığı anlamına gelmez.
 
Joo Zepper :
ancak bu, ME derleyicisinin davranışını düzeltmeye gerek olmadığı anlamına gelmez.
Gerçekten de, derleyici bir ön bildirim alır - düzeltin, bir hata üretilecektir.
 

Bu nasıl olabilir?

Bir "danışman" var:

 //+------------------------------------------------------------------+
//|                                               Exp_TickTest01.mq4 |
//|                        Copyright 2015, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2015, MetaQuotes Software Corp."
#property link        "https://www.mql5.com"
#property version    "1.00"
#property strict
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit ()
  {
//---
   
//---
   return ( INIT_SUCCEEDED );
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit ( const int reason)
  {
//---
   
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick ()
  {
//---
   Comment ( "Exp Ask>>" ,Ask);
   Print ( "Exp Ask>>" ,Ask);
  }
//+------------------------------------------------------------------+

Ve Expert Advisor test penceresinde ayarlanan "gösterge":

 //+------------------------------------------------------------------+
//|                                               Ind_TickTest01.mq4 |
//|                        Copyright 2015, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2015, MetaQuotes Software Corp."
#property link        "https://www.mql5.com"
#property version    "1.00"
#property strict
#property indicator_separate_window
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit ()
  {
//--- indicator buffers mapping
   
//---
   return ( INIT_SUCCEEDED );
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate ( const int rates_total,
                 const int prev_calculated,
                 const datetime &time[],
                 const double &open[],
                 const double &high[],
                 const double &low[],
                 const double &close[],
                 const long &tick_volume[],
                 const long &volume[],
                 const int &spread[])
  {
//---
   IndicatorShortName( "Ind Ask>>" + DoubleToString (Ask, _Digits ));
   Print ( "Ind Ask>>" + DoubleToString (Ask, _Digits ));   
//--- return value of prev_calculated for next call
   return (rates_total);
  }
//+------------------------------------------------------------------+

Ekran sonucu:

TickTest01

Günlüklerdeki çalışmanın sonucu (parça):

 2015.11 . 12 10 : 07 : 50.801 2015.11 . 11 02 : 17   Ind_TickTest01 EURUSD,M1: Ind Ask>> 1.07496
2015.11 . 12 10 : 07 : 50.801 2015.11 . 11 02 : 17   Exp_TickTest01 EURUSD,M1: Exp Ask>> 1.07429
2015.11 . 12 10 : 07 : 50.737 2015.11 . 11 02 : 17   Ind_TickTest01 EURUSD,M1: Ind Ask>> 1.07496
2015.11 . 12 10 : 07 : 50.737 2015.11 . 11 02 : 17   Exp_TickTest01 EURUSD,M1: Exp Ask>> 1.0743
2015.11 . 12 10 : 07 : 50.673 2015.11 . 11 02 : 16   Ind_TickTest01 EURUSD,M1: Ind Ask>> 1.07496
2015.11 . 12 10 : 07 : 50.673 2015.11 . 11 02 : 16   Exp_TickTest01 EURUSD,M1: Exp Ask>> 1.0743
2015.11 . 12 10 : 07 : 50.609 2015.11 . 11 02 : 16   Ind_TickTest01 EURUSD,M1: Ind Ask>> 1.07496
2015.11 . 12 10 : 07 : 50.609 2015.11 . 11 02 : 16   Exp_TickTest01 EURUSD,M1: Exp Ask>> 1.07429
2015.11 . 12 10 : 07 : 50.545 2015.11 . 11 02 : 16   Ind_TickTest01 EURUSD,M1: Ind Ask>> 1.07496
2015.11 . 12 10 : 07 : 50.545 2015.11 . 11 02 : 16   Exp_TickTest01 EURUSD,M1: Exp Ask>> 1.07428
2015.11 . 12 10 : 07 : 50.481 2015.11 . 11 02 : 16   Ind_TickTest01 EURUSD,M1: Ind Ask>> 1.07496
2015.11 . 12 10 : 07 : 50.481 2015.11 . 11 02 : 16   Exp_TickTest01 EURUSD,M1: Exp Ask>> 1.07427

Expert Advisor'da görüntülenen değerler ve gösterge farklıdır.

EA, test cihazından veri alıyor gibi görünüyor ve gösterge, EA'nın test edildiği cihazın mevcut verileridir.

902'yi serbest bırakın.

Dosyalar:
 
Yury Kirillov :

Bu nasıl olabilir?

Bir "danışman" var:

Ve Expert Advisor test penceresinde ayarlanan "gösterge":

Ekran sonucu:

Günlüklerdeki çalışmanın sonucu (parça):

Expert Advisor'da görüntülenen değerler ve gösterge farklıdır.

EA, test cihazından veri alıyor gibi görünüyor ve gösterge, EA'nın test edildiği cihazın mevcut verileridir.

902'yi serbest bırakın.

Geri bildiriminiz için teşekkür ederiz! Düzeltildi.
 

Alexander :
Спасибо за обращение! Исправлено.

Cevap için teşekkürler!

Zaten çözüldü?

Yoksa bir sonraki sürümde mi?