MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 1063

 
Lütfen söyleyin , h4 ve d1 çubuklarının açılma zamanını değiştirmenin bir yolu var mı? Kabaca söylemek gerekirse, saat diliminde bir değişikliği simüle edin. Belki de h1 zaman çerçevesine veya buna benzer bir şeye dayalı olarak çevrimdışı grafikler oluşturan bir komut dosyası.
 
Artyom Trishkin :

İnfaz affedilemez.

Ne hata?

Burada.

Görüldüğü gibi local düzeyde tanımlanmış bir yapıyı fonksiyonlara geçiremezsiniz.

 
vladnev :
Lütfen söyleyin , h4 ve d1 çubuklarının açılma zamanını değiştirmenin bir yolu var mı? Kabaca söylemek gerekirse, saat diliminde bir değişikliği simüle edin. Belki de h1 zaman çerçevesine veya buna benzer bir şeye dayalı olarak çevrimdışı grafikler oluşturan bir komut dosyası.
 iOpen ( Symbol ,нужный таймфрейм,номер бара(счёт идёт справа налево))

onunla çalışmak gerekiyor

 
Seric29 :

Burada.

Görüldüğü gibi local düzeyde tanımlanmış bir yapıyı fonksiyonlara geçiremezsiniz.

Bir yapının tanımını, o yapının türü ile bir değişkenin bildirimini karıştırıyorsunuz.
 
Artyom Trishkin :

Kendiniz kontrol etmeye ne dersiniz? Karmaşık? Ve neden çok yazıyorsun?

kontrol etmedim. Seni ne durduruyor?

Artyom, bu seçenek gerçekten işe yaramayacak. Yapı, global değişkenler düzeyinde tanımlanmalıdır. Ve her yerde bir yapı tipi değişken. Daha sonra referans ile geçirilebilir. Çünkü fonksiyonun giriş parametrelerindeki tip tanımlanmayacaktır.

 //+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
   struct MyPoint
     {
       int          x[ 5 ];
       int          y;
     }gw777; // Переменная глобального уровня, просто лишняя.
int OnInit ()
  {
   MyPoint qw1; // Локальная переменная
   EqualPointsP(qw1); // передал структуру в функцию EqualPointsP
   return ( INIT_SUCCEEDED );
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit ( const int reason) {}

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
bool EqualPointsP(MyPoint &qw)
  {
   Print ( "EqualPointsP " );
   return true ;
  }
 
Artyom Trishkin :
Bir yapının tanımını, o yapının türü ile bir değişkenin bildirimini karıştırıyorsunuz.

Açısından. Yapının global olarak bildirilmesi gerektiğini mi söylüyorsunuz, yani. kodun dışında ve yapı, tanım gereği, kodun içinde tanımlanamaz, yani. yerel olarak, ancak bu şekilde yalnızca değişkenler oluşturulabilir, yoksa bir şeyi yanlış mı anlıyorum? Açıkla lütfen.

 
Alexey Viktorov :

Artyom, bu seçenek gerçekten işe yaramayacak. Yapı, global değişkenler düzeyinde tanımlanmalıdır. Ve herhangi bir yerde bir yapı tipi değişken. Daha sonra referans ile geçirilebilir. Çünkü fonksiyonun giriş parametrelerindeki tip tanımlanmayacaktır.

Yani küreseldir.

 
Seric29 :

Yani küreseldir.

NUMARA. Struct, kullanıcı tanımlı bir türdür . Ve buna göre bu tip her yerde mevcut olmalıdır. Ve sağ ayağın sol küçük parmağının istediği yerde özel bir VARIABLE tipi bildirilebilir ve bu değişkeni sevgili köpeğin istediği yere iletebilir, ancak yalnızca referans olarak.

 
Alexey Viktorov :

Artyom, bu seçenek gerçekten işe yaramayacak. Yapı, global değişkenler düzeyinde tanımlanmalıdır. Ve her yerde bir yapı tipi değişken. Daha sonra referans ile geçirilebilir. Çünkü fonksiyonun giriş parametrelerindeki tip tanımlanmayacaktır.

bir değişkenin bildirimini karıştırıyorsunuz.


 

Genel olarak, Artyom hiçbir şeye cevap vermediğinden ve yukarıdaki kişi, işlevlerin bilinmesi gereken ve dolayısıyla global olarak bildirilmesi gereken yapılarla çalıştığını yanıtladığı için, yapının global olarak bildirilmesi gerektiği sonucuna varırız.

Doğası gereği, bir yapı işlevi yalnızca aynı statik yapıları kabul edebilir. Bu, bir yapının sınırlı bir kapsamı olacak şekilde yerel olarak bildirilmesinin ve bir işleve aktarılmasının imkansız olduğu anlamına gelir.