Mql5 dilinin özellikleri, incelikleri ve çalışma yöntemleri - sayfa 121

 
TheXpert :

O zaman anlamıyorum

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

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

Alexey Navoykov , 2019.01.14 16:35

Eğer buna ihtiyaç varsa, o zaman C++'da void OnTick()'i de bildirebilirsiniz; başlangıçta. Ancak genel olarak, işlev bildirimlerinin sırası, kodun doğruluğunu kontrol etmenin ek bir yoludur. Şimdi, eğer bir eklentide OnTick ()'i ararsanız veya daha da kötüsü - OnInit () - bu iyi mi? Kitaplıklar çalışma kodunuzu görmemelidir.
 
fxsaber :

O zaman anlamıyorum

iyi, yanılmışım. işlevler için değil, yalnızca sınıflar, yapılar için ileriye dönük bir bildirim vardır.

 
fxsaber :

İşin aslı, kullanacağınız işlevler dahil etmede ayarlanmışsa, önerilene göre, içerme daha düşükse bunları yazmanız gerekir.

Ve inkludnik'i daha erken yerleştirmenin sorunu nedir?

Bu, bir dosya için uygunsuz olabilir (çağrıdan önce gövdeli bir işlev zorunludur), ancak işlev mqh'deyse - en baştan bir içerme eklemenin sorunu nedir?

 
TheXpert :

iyi, yanılmışım. işlevler için değil, yalnızca sınıflar, yapılar için ileriye dönük bir bildirim vardır.

Bunu açıklamanız harika.

Andrey Khatimliansky :

Ve inkludnik'i daha erken yerleştirmenin sorunu nedir?

Bu, bir dosya için uygunsuz olabilir (çağrıdan önce gövdeli bir işlev zorunludur), ancak işlev mqh'deyse - en baştan bir içerme eklemenin sorunu nedir?

Makrolu bazı yapılar bazen son satıra dahil etmeyi gerektiriyordu. Belirli bir örnek vermeyeceğim, pratikte defalarca rastladım.

 
TheXpert :

iyi, yanılmışım. işlevler için değil, yalnızca sınıflar, yapılar için ileriye dönük bir bildirim vardır.

hayır ben de hatalıyım Bir fonksiyonun bir bildirimi ve bir tanımı vardır.
 
fxsaber :

Makrolu bazı yapılar bazen son satıra dahil etmeyi gerektiriyordu. Belirli bir örnek vermeyeceğim, pratikte defalarca rastladım.

Bu oldukça egzotik bir şey. Tek tek makroların onlar için mimari doğruluktan ödün vermeye değeceğini düşünmüyorum.

Ama tamam, bu bir yan mesele. Her halükarda, program kodu, her durumda, içine gömülü algoritmaya göre tam olarak yürütülmelidir. Bir değişkene başlatmadan önce erişmek saçmadır. Bu derleme olmamalıdır.

 

Bu arada, içermede orada olmayan bazı işlevler kullanılıyorsa, yine de orada bildirilmeleri gerekir. Tıpkı sınıflar ve dış değişkenler gibi. Aksi takdirde, bu zaten bir tür koltuk değneğidir ve bir katılım değildir.

Buna göre, içerme, programın neresine eklendiğine bağlı olmamalıdır.

 
Alexey Navoykov :
Bu arada, içermede orada olmayan bazı işlevler kullanılıyorsa, yine de orada bildirilmeleri gerekir. Tıpkı sınıflar ve dış değişkenler gibi. Aksi takdirde, bu zaten bir tür koltuk değneği, bir katılım değil

Sizce katılım nedir? Benim için bu sadece ayrı bir dosyaya ayrılmış bir metin parçası. Ve kaynak koduna yeniden dahil edilmesi göz ardı edilir. Başka hiçbir şey.

 
fxsaber :

Sizce katılım nedir? Benim için bu sadece ayrı bir dosyaya ayrılmış bir metin parçası. Ve kaynak koduna yeniden dahil edilmesi göz ardı edilir. Başka hiçbir şey.

Bence bağımsız bağımsız bir kod olmalı. Bu yüzden anlam olarak daha mantıklı ve bu kodun kontrolü ve bağımsız bir sözdizimi kontrolü yapılması kolaydır. Ve her şey dosyalara dağılmışsa ve neyin nereden çağrıldığı belli değilse, bu bir tür kaostur.

 
Alexey Navoykov :

Bence bağımsız bağımsız bir kod olmalı. Bu yüzden anlam olarak daha mantıklı ve bu kodun kontrolü ve bağımsız bir sözdizimi kontrolü yapılması kolaydır. Ve her şey dosyalara dağılmışsa ve neyin nereden çağrıldığı belli değilse, bu bir tür kaostur.

Kodumun örneklerini gönderdim. Cevapların kaosu hakkında, derlenmemiş inkudnikler için bile duymak gerekli değildi.