Ben böyle bir şey yaptım... - sayfa 3

 
Andrei01 :

Tam olarak neyle ilgileniyorsunuz, açıklar mısınız? Ana işlevde oraya buraya dağılmış bir hesaplama kodu olmaması için kod bir işleve nasıl katlanır?


Sadece kodu yeniden yapın, başka bir şey değil.
 

Bu arada, prensipte, bu kod için, yazma sürecinde, daha "doğru" bir koda dönüşme olasılığı kastedildi, elbette, gerekli şeylerin önceden ne kadar doğru öngörüldüğünü söylemek mümkün değil.

Ancak genel olarak, ciddi bir şekilde karıştırılması tavsiye edilen bir yaklaşım bulunursa, bu özel yaklaşım için en uygun olan tamamen farklı bir kod yazmak en doğru olacaktır. Bu arada, çeşitli kompakt kısa ömürlü projeler MQL için oldukça tipiktir, uzun vadeli geliştirme ve bakım gerektiren görevler oldukça nadirdir, IMHO.

 
TheXpert :

Gerekçe yok.
 
Vinin :

Sadece kodu yeniden yapın, başka bir şey değil.

Bu kodu temizlemede özel bir zorluk görmüyorum, ama ne yazık ki şimdi çok meşgulüm, belki daha sonra.

Her durumda, tüm döngüler ayrı işlevlere taşınacaktır ve elbette başlangıç içinde nesneler oluşturmak beceriksizdir, başlatma sırasında bir kez oluşturulmaları ve ardından yalnızca hareket etmeleri gerekir.

 
Andrei01 :

Bu kodu temizlemede özel bir zorluk görmüyorum, ama ne yazık ki şimdi çok meşgulüm, belki daha sonra.

Her durumda, tüm döngüler ayrı işlevlere taşınacaktır ve elbette başlangıç içinde nesneler oluşturmak beceriksizdir, başlatma sırasında bir kez oluşturulmaları ve ardından yalnızca hareket etmeleri gerekir.


Bu durumda, tüm bunlar sadece bir seldi ve başka bir şey değildi.

 
Vinin :
Sadece kodu yeniden yapın, başka bir şey değil.

İçinde, bu bir konu, yoksa sen, arkadaşım, bir fludersin.

Andrey01 :

Ana start() işlevi çağrılmadan mı?

Kolayca. Özellikle MT5'te. Genelde kod yazmadan yaptığınızdan şüpheleniyorum :) gg.
 

Andrei01 :

Elbette, başlangıç içinde nesneler oluşturmak beceriksizdir, başlatma sırasında bir kez oluşturulmaları ve ardından yalnızca hareket etmeleri gerekir.


Ah, ama önceden bilinmeyen sayıda nesneyi nasıl oluşturacağıma bakmak benim için ilginçti.
 
Vinin :


Bu durumda, tüm bunlar sadece bir seldi ve başka bir şey değildi.

Neden hemen sel? Ben kuralı açıkladım ama özde hiçbir şeye itiraz etmediniz, sadece beni asılsız suçlamaya ve kod istemeye başladınız. Kod istiyorsanız bekleyin - herkes sizin kadar hızlı değil.

Kodu bir işleve nasıl saracağınızı bilmemeniz şaşırtıcı olsa da - görünüşe göre bu sadece kışkırtıcı bir soruydu.

 
Candid :

Ah, ama önceden bilinmeyen sayıda nesneyi nasıl oluşturacağıma bakmak benim için ilginçti.
Neden bilinmiyor? Sonlu bir sayı mı yoksa sonsuz mu?
 
Andrei01 :

Programlamadaki eğrilik, programları doğru yazmak için birkaç basit kuralı bilmemektir. Bir kişi onları anlar anlamaz, eğrilik hemen kaybolur. Bu arada, bu kod da eğrilikten muzdarip - çağrılan ana işlevin gövdesi, örneğin döngüler gibi hesaplama kodu içermemeli ve her şey bir işleve sarılmalıdır.


Evet, mümkün olduğuna katılıyorum, ama beni de anlayın, bir keresinde assembler'da programlamıştım. Sadece iyiye alışırsan, ondan uzaklaşmak çok zordur. Düşük seviyeli bir programlama diline geri dönmek çok zordur. MQL matkad ile karşılaştırıldığında düşük seviyeli programlama dili. Örnek lütfen bunu yazmam 1 dakikamı aldı

Ve her şeyin doğru hesaplandığından eminim. Aynısını MQL'de yapmaya çalışın, birinci tür sıfır dereceli Bessel fonksiyonunun hesaplamasını içeren Rayleigh-Rice fonksiyonunun çift tanımlı integralini hesaplayın (sadece lütfen bunun piyasa analizi için gerekli olmadığını söylemeyin) , şahsen buna ihtiyacım var).

ZY Sadece bir fikrim var ve diyelim ki kontrol etmek istiyorum, kontrol ettim, daha ileri gittim. Bu fonksiyon bir PBX inşa etmek için hayati olsaydı (onsuz yapamazsınız), o zaman sizi temin ederim ki onu işe alır ve çok lezzetli bir fiyat belirlerdim ...

Neden: