Mql4 dilinin özellikleri, incelikleri ve çalışma yöntemleri - sayfa 4

 
Alexey Kozitsyn :
Vay be ince an... SD'ye mi yazmışlar?

Yazar yazdı. Dilin olanakları uzun süredir eski belgelere uymuyor, yani. aslında, belgelenmemiş şeyler kullanılır, buna göre iddiaları sunmak gariptir.

Global bir değişkenin başlangıç değeri artık bir fonksiyon aracılığıyla bildirilebilir!

Aynısı diğer statik değişkenler için de geçerlidir.

Geliştiricilerin bu yenilik hakkında sessiz kalması garip.


Документация по MQL5: Основы языка / Переменные / Статические переменные
Документация по MQL5: Основы языка / Переменные / Статические переменные
  • www.mql5.com
Основы языка / Переменные / Статические переменные - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
fxsaber :
Statik konusunda, her iki dilde de çok ince bir nokta var.

Alexey Kozitsyn :
Vay be hassas an... SD'ye mi yazmışlar?

Ve yardımda yazılan hiçbir şey, statik bir değişkenin ... kendiniz için okuduğu

Statik bir değişken, herhangi bir ifadeyle başlatılabilen basit bir yerel değişkenin aksine, türüne karşılık gelen bir sabit veya sabit bir ifadeyle başlatılabilir.


Ama bir işlev değil.

Bu nasıl çalışır

 #property strict
#property indicator_chart_window

int TestBrokenStatic()
{
   static int stInt = 101 ;
   stInt++;
   return stInt;
}

int OnInit ()
{
   static int result = 0 ;
   result = TestBrokenStatic();
   Print ( "TestStatic Expected result 102   - Actual result=" , result);
   result = TestBrokenStatic();
   Print ( "TestStatic Expected result 103   - Actual result=" , result);
   
   return INIT_SUCCEEDED ;
}

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[])
{
   return rates_total;
}
2017.04 . 29 13 : 49 : 51.546 !Test USDCHF,M15: TestStatic Expected result 103    - Actual result= 103
2017.04 . 29 13 : 49 : 48.457 !Test USDCHF,M15: TestStatic Expected result 102    - Actual result= 102
2017.04 . 29 13 : 49 : 40.089 Custom indicator Test\!Test USDCHF,M15: loaded successfully
Статические переменные - Переменные - Основы языка - Справочник MQL4
Статические переменные - Переменные - Основы языка - Справочник MQL4
  • docs.mql4.com
Статические переменные - Переменные - Основы языка - Справочник MQL4
 
Alexey Viktorov :

Ve yardımda yazılan hiçbir şey, statik bir değişkenin ... kendiniz için okuduğu

Ama bir işlev değil.

Bu nasıl çalışır

O zaman derleyici bir hata vermelidir ...
 
Alexey Viktorov :

Ve yardımda yazılan hiçbir şey, statik bir değişkenin ... kendiniz için okuduğu

Ancak, altı ay önce geliştiricilerden belgelere bir bağlantı ve kod tartışmasına bir bağlantı vermesi sorun değil ... tavsiyenize uyun.

Özellikle statik const ile.

 
fxsaber :

Ancak, altı ay önce geliştiricilerden belgelere bir bağlantı ve kod tartışmasına bir bağlantı vermesi sorun değil ... tavsiyenize uyun.

Özellikle statik const ile.

İngilizce bilmediğim için linke bakmadım ama kürk. çeviri bazen Korece ile karışık Çin-Japoncadan daha anlaşılmazdır.

Evet, kendine bu kadar yüklenmene gerek yok. Sözlerime göre, böyle bir önemsememeye dikkat etmediğiniz konusunda hiçbir sitem yok.

 
Alexey Viktorov :

İngilizce bilmediğim için linke bakmadım ama kürk. çeviri bazen Korece ile karışık Çin-Japoncadan daha anlaşılmazdır.

Evet, kendine bu kadar yüklenmene gerek yok. Sözlerime göre, böyle bir önemsememeye dikkat etmediğiniz konusunda hiçbir sitem yok.


Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum

Mql4 dilinin özellikleri, incelikleri ve çalışma yöntemleri

fxsaber , 2017.04.29 11:07

Dilin olanakları uzun süredir eski belgelere uymuyor, yani. aslında, belgelenmemiş şeyler kullanılır, buna göre iddiaları sunmak gariptir.

 
Alexey Kozitsyn :
O zaman derleyici bir hata vermelidir ...

Belki öyle olmalı, ama ... sahip olduğumuz şeye sahibiz.

 
fxsaber :

Eski belgelerde öyle değil miydi?


köpekler. Bu bağlantıların anlamını çok geç anladım...

Ama işte çürütme

fxsaber :

fark edilmeden kaldı

Global bir değişkenin başlangıç değeri artık bir fonksiyon aracılığıyla bildirilebilir!

Aynısı diğer statik değişkenler için de geçerlidir.

Geliştiricilerin bu yenilik hakkında sessiz kalması garip.

Yoksa bu tamamen farklı bir şey mi? ilan et veya başlat?
 
static const bool IsTester = (::MQLInfoInteger(MQL_TESTER) || ::MQLInfoInteger(MQL_OPTIMIZATION) ||
                              ::MQLInfoInteger(MQL_VISUAL_MODE) || ::MQLInfoInteger(MQL_FRAME_MODE));
 
fxsaber :

Şu anda kontrol edemiyorum, ancak MQL_TESTER diğer her şeyi içeriyor gibi görünüyor. Ancak diğer her şey ayrı ayrı birbirini içermez.

Yani, programın test cihazında çalıştığını anlamak için (listelenen modlardan herhangi birinde), yalnızca ilk bayrağı kontrol etmek yeterlidir.