yürütme ilkesini döndürür. - sayfa 4

 
prostotrader :

Bunu yapmanız gerekir:

teşekkür etmek)
 
Ve lütfen deinitialization'da ne yapacağınızı açıklayın. Kodlarda sadece sınıf örneklerinin silindiğini gördüm. Değişkenlerin ve dizilerin sıfırlanması gerekiyor mu? Aslında ne veriyor? Ve sınıfları kaldırmazsanız? Terminal kapatılana kadar hafızada kalacaklar mı? hatta sonra?
 
Ivan_Invanov :
Ve lütfen deinitialization'da ne yapacağınızı açıklayın. Kodlarda sadece sınıf örneklerinin silindiğini gördüm. Değişkenlerin ve dizilerin sıfırlanması gerekiyor mu? Aslında ne veriyor? Ve sınıfları kaldırmazsanız? Terminal kapatılana kadar hafızada kalacaklar mı? hatta sonra?

Yalnızca yeni ile oluşturulan nesneler silinmelidir.

 
Dmitry Fedoseev :

Yalnızca yeni ile oluşturulan nesneler silinmelidir.

Teşekkür ederim. Ve neden?
 
Ivan_Invanov :
Teşekkür ederim. Ve neden?

Çünkü kendisi silinmez.

 
Dmitry Fedoseev :

Çünkü kendisi kaldırılmaz.

Ve terminal kapanırsa, kalır mı?
 
Ivan_Invanov :
Ve terminal kapanırsa, kalır mı?

Kaldırılacağını düşünüyorum, ama gerçek değil. Bunun için umut etmeyin. Kendim oluşturdum - kendim sildim.

 
Dmitry Fedoseev :

Kaldırılacağını düşünüyorum, ama gerçek değil. Bunun için umut etmeyin. Kendim oluşturdum - kendim sildim.

Silindi, tam olarak, sadece oluşturulan nesnelerin kontrolünü gerektirir. Bu, programcının neyi ve nerede oluşturduğunu ve sildiğini bilmesi, programları çalıştırma sürecinde bellek sızıntılarıyla ilişkili hata olasılığını azaltması için gereklidir.
 
Cevaplar için herkese teşekkürler.
 
Lütfen durumu == ve != operatörleri ile netleştirin. Karşılaştırılabilir değişkenler, sıfır olmayan herhangi bir değere sahip olduklarında doğruysa (yardımda öyle yazıyor). O zaman diziler nasıl temsil edilir? Ve neden bu örnekte "ikiye eşit değil" karşılaştırması var, neden tam olarak iki, sıfır olmayan herhangi bir değer doğruysa, fark yoksa, 1 varsa neden tam olarak 2 yazıyor? İşte resmi örnekten alınan kod ( Hareketli Ortalama 2009-2017 v1.00 terminali, satır 132 ile Uzman Danışmandan).
 MqlRates rt[ 2 ];
//--- go trading only for first ticks of new bar
   if ( CopyRates ( _Symbol , _Period , 0 , 2 ,rt)!= 2 )
     {
       Print ( "CopyRates of " , _Symbol , " failed, no history" );
       return ;
     }

1. "==" , "!=" operatörlerinde karşılaştırıldığında, boş olmayan herhangi bir değerin true ile temsil edildiği doğru mu?

2. Dizi nasıl temsil edilir? Nasıl bir sayı ile karşılaştırılabilir?

3. Karşılaştırmada neden "2" var? Yardıma göre true sıfır olmayan herhangi bir değer ise, "1" yazmak mantıklıdır.

4. CopyRates bir hata alırsa if koşulu işe yaradı mı?

Neden: