MetaTrader 4 Build 529 Beta, Yeni Derleyici ile Yayınlandı - sayfa 124

 
VOLDEMAR :

Her şeyi İngilizce yazmak daha iyidir, kodunuz yabancı bir tüccara ulaşacaktır, hiçbir şey anlamayacaktır...

Ben Rusça kod yazıyorum, o da Rusça yazmamı istiyor. Ve burada kontrol ettiğim şey - kendim için yazıyorum ve Rusça mı yoksa Mars dilinde mi yazdığım benim için önemli değil. Bir sorun gördüm ve anlattım.

Piyasa için İngilizce yazıyorum.

 
pro_ :
dize :

Aramak ve bulmak.

Senin örneğini alalım.



özelden yazdım Karşılaştığım sorunun bir örneği ile. ObjectFind, sorunu çözme girişimiydi ve muhtemelen haklısınız, ObjectFind'ın kendisi iyi çalışıyor.

Sorun açık. ObjectFind işlevinin yanlış kullanımı. ObjectFind, nesnenin bulunduğu alt pencerenin numarasını döndürür. Nesne bulunamazsa, -1 döndürülür. "Sıfır - sıfır olmayan" ifadesini kontrol edersiniz
 
Night63 :

Merhaba!

Bu sorunu buldum.

4 basamaklı alıntılardan 5 basamaklı alıntılara geçiş yapmak için koda bir blok ekliyoruz (kod kesinlikle çalışıyor, düzinelerce Uzman Danışman üzerinde test edildi):

Ayrıca, aşağıdakiler gözlemlenebilir.

Danışmanın giriş parametrelerini F7'ye basarak çağırıyoruz, her şey doğru:

Tamam'ı tıklayın, ardından tekrar F7'ye basın:

Tamam'ı tıklayın, ardından tekrar F7'ye basın:

Tamam'ı tıklayın, ardından tekrar F7'ye basın:

Vb......

Güncellenmiş yapılara sahip bu hata kaybolmuyor. Farklı kullanıcılarda aynı şekilde kendini gösterir. Burada tartışılan konu


Giriş değişkenlerini değiştiremezsiniz!

extern yerine input anahtar sözcüğünü kullanın, derleyici bunu yapmanıza izin vermez.

Eski dörtlü işlevselliği korumak için neler yapılabileceğini düşüneceğiz

PS, bunu gündeme getirdiğiniz için çok teşekkürler

 
artmedia70 :
Yani gelecekte Barlar sadece önceden tanımlanmış bir değişken olmayacak, aynı zamanda aynı isimde bir fonksiyon da olacak: Bars() ?

Oldukça mümkün. (Bu arada, buna C/C++'da izin verilir)
 
stringo :

Giriş değişkenlerini değiştiremezsiniz!



Burada daha ayrıntılı olarak, giriş değişkenlerini değiştirmenin imkansız olduğu anlamına gelir ???

Girdi değişkeni girdi ise int TakeProfit = 300 ;

kodun devamında, ona farklı bir değer atayabilir miyim ???

Değiştirmenin ne zaman imkansız olduğunu anlamıyorum ???

 

Başka bir soru, fare imlecinin bmp nesnesi üzerinde olduğunu programlı olarak nasıl belirleyeceğimizdir ???

İmlecin girdiği nesnenin altında bir alanın olduğu ve kodun imlecin bmp nesnesinin üstünde olduğunu anladığı bir kod yaptım...

Soruyorum çünkü imleci bmp nesnesi üzerinde belirlemenin daha basit bir yöntemini arıyorum ...

 
VOLDEMAR :

Burada daha ayrıntılı olarak, giriş değişkenlerini değiştirmenin imkansız olduğu anlamına gelir ???

Girdi değişkeni girdi ise int TakeProfit = 300 ;

kodun devamında, ona farklı bir değer atayabilir miyim ???

Değiştirmenin ne zaman imkansız olduğunu anlamıyorum ???

Yazılım değiştirilemez. Yalnızca ayarlarda kullanıcı tarafından.

girdi int TakeProfit = 300;

int alProfit;

int start() {

TakeProfit=TakeProfit;

// Ve daha da değiştir, zaten takeProfit.

dönüş(0);

}

 
artmedia70 :

Yazılım değiştirilemez. Yalnızca ayarlarda kullanıcı tarafından.

girdi int TakeProfit = 300;

int alProfit;

int start() {

TakeProfit=TakeProfit;

// Ve daha da değiştir, zaten takeProfit.

dönüş(0);

}




Teşekkürler !!! şimdi bileceğim...
 
VOLDEMAR :

Burada daha ayrıntılı olarak, giriş değişkenlerini değiştirmenin imkansız olduğu anlamına gelir ???

Girdi değişkeni girdi ise int TakeProfit = 300 ;

kodun devamında, ona farklı bir değer atayabilir miyim ???

Değiştirmenin ne zaman imkansız olduğunu anlamıyorum ???

İşte özel parabolik sistemimizden bir örnek

 input double InpSARStep= 0.02 ;     // Step
input double InpSARMaximum= 0.2 ;   // Maximum
//---- buffers
double        ExtSARBuffer[];
//--- global variables
double        ExtSarStep;
double        ExtSarMaximum;

...

void OnInit ()
  {
//--- checking input data
   if (InpSARStep< 0.0 )
     {
      ExtSarStep= 0.02 ;
       Print ( "Input parametr InpSARStep has incorrect value. Indicator will use value" ,
            ExtSarStep, "for calculations." );
     }
   else
      ExtSarStep=InpSARStep;
   if (InpSARMaximum< 0.0 )
     {
      ExtSarMaximum= 0.2 ;
       Print ( "Input parametr InpSARMaximum has incorrect value. Indicator will use value" ,
            ExtSarMaximum, "for calculations." );
     }
   else
      ExtSarMaximum=InpSARMaximum;

...

Ayrıca ExtSarStep ve ExtSarMaximum kullanıyoruz

 
stringo :
Kesin olan şu ki, yakında olmayacak


Çok üzgünüm. Uzmanlarımın bu olaylara hava gibi ihtiyacı var.

Her adımda, bir dizi pozisyonu sıralamanız ve hangilerinin nereye ve neden gittiğini bulmanız gerekir.