Hatalar, hatalar, sorular - sayfa 2012
Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
O zaman hata, 32-bit sürümler için (sadece buna sahibim) hatasız yürütme gerçeğinde de yatmaktadır. geçersiz işaretçi - yalnızca sınıfa bir üye eklerseniz, örneğin int i
Görünüşe göre, MT4'te test ettiniz, ancak yapı orada daha düşük.
Böcek.
NOT CURRENT üzerinde yinelenen bir nesne oluştururken 4200 hatası atılmıyor (ki bu hala geçerli olanı veriyor - [günlükte "GEÇERLİ ŞEKİL"e bakın]),
ve aynı zamanda, GÜNCEL OLMAYAN bir çizelgede bir nesneyi aramanın, mevcut bir çizelgede arama yapmaktan 500 kat daha fazla zaman aldığı tespit edildi.
a :), çünkü buna sahip olan tek kişi ben değilim.
Bir işlev çağrısı üzerine hemen bir nesne oluşturulmaz. Grafiğe eşzamansız bir komut gönderilir. Programımız için bir ön kontrol yapma fırsatımız var. Başka birinin programı için böyle bir olasılık yoktur - daha doğrusu vardır, ancak çok pahalıdır.
Bu nedenle, "hata yok" dönüş kodu, bu yabancı grafiğin bulunduğunu ve nesne oluşturma komutunun yürütme için kuyruğuna başarıyla yerleştirildiğini gösterir.
Görünüşe göre, MT4'te test ettiniz, ancak yapı orada daha düşük.
MT5\1653\32\Win10 - Satıra geliyorum //Sonuç: false
Ayrıca 32 bit'iniz varsa ve geçersiz bir işaretçi oluşursa - o zaman genel olarak bir tür rastgele hata
ServiceDesk şunu yazar: f işlevi boştur ve çağrı, kopyalama operatörüne yapılan çağrı gibi optimize edici tarafından kesilir.
Ama eğer
sonra Sonuç:
2017.09.26 14:03:55.853 Demo (GBPUSD,M15) A::f
2017.09.26 14:03:55.853 Demo (GBPUSD,M15) yanlış
esasen değişmez
Ayrıca 32-bit'iniz varsa - o zaman genel olarak bir tür rastgele hata
Hayır, Win7x64'ü çalıştırdım.
ServiceDesk şunu yazar: f işlevi boştur ve çağrı, 1. adımdaki kopyalama operatörüne yapılan çağrıda olduğu gibi optimize edici tarafından kesilir.
Ama eğer
o zaman hiçbir şey değişmezSD, kontroller olmadan hızlı bir şekilde yanıt verdiğinde ortaya çıktı. Ve uygulamaların %90'ı için bu muhtemelen doğrudur, çünkü büyük olasılıkla çoğu uygulama hatalardan değil, bilgisizlikten kaynaklanmaktadır. Lütfen daha yakından bakın - işe yarıyor.
Bağlantıları olan site hatası.
Bir forum mesajı bir moderatör tarafından başka bir konuya taşınmışsa, "Tüm mesajlar" profil aramasında bu mesaj eski yeri gösterir. Buna göre, ona geçiş yapmayın.
MT5\1653\32\Win10 - Satıra geliyorum //Sonuç: false
Ayrıca 32 bit'iniz varsa ve geçersiz bir işaretçi oluşursa - o zaman genel olarak bir tür rastgele hata
ServiceDesk şunu yazar: f işlevi boştur ve çağrı, kopyalama operatörüne yapılan çağrı gibi optimize edici tarafından kesilir.
Ama eğer
sonra Sonuç:
2017.09.26 14:03:55.853 Demo (GBPUSD,M15) A::f
2017.09.26 14:03:55.853 Demo (GBPUSD,M15) yanlış
esasen değişmez
Ekleyeceğim, f fonksiyonu nesnenin alanlarına adresleme içermiyor, bu nedenle, f fonksiyonu için nesnenin işaretçisine (buna) gerek yok.
Optimize edici, tanıtıcının gereksiz başvurudan kaldırılmasını (unutmayın, MQL'de bir işaretçi bir tutamaçtır) bir nesne işaretçisine kaldırır, çünkü o (işaretçi) f içinde kullanılmaz
Ekleyeceğim, f fonksiyonu nesnenin alanlarına adresleme içermiyor, bu nedenle, f fonksiyonu için nesneye işaretçi (bu) gerekli değil.
Optimize edici, tanıtıcının gereksiz başvurudan kaldırılmasını (unutmayın, MQL'de bir işaretçi bir tutamaçtır) bir nesne işaretçisine kaldırır, çünkü o (işaretçi) f içinde kullanılmaz
Açıkça, statik ile olduğu gibi f ile çalışın. Ama birinin çalışıp diğerinin kesintiye uğraması nasıl açıklanır?
Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum
GİRİŞ olarak ENUM Sembol listesi
Martin Nohejl , 2017.09.26 13:01
Merhaba, aşağıdakileri yapacağım:
Bir giriş parametresi olarak sembole sahip olmak istiyorum, bu yüzden doğru sembolü seçeceğim bir giriş değişkeni (enum) istiyorum, bunun gibi:
Bunu bu kodla yaptım:
Bu benim için mükemmel çalışıyor. Ancak enum'u tüm sembol listesiyle dinamik olarak doldurmak istiyorum (SymbolsTotal(0);).
Her nasılsa muhtemelen kodla:
Açıkça, statik ile olduğu gibi f ile çalışın. Ama birinin çalışıp diğerinin kesintiye uğraması nasıl açıklanır?
Hata ayıklama için derlerken, optimize edici yalnızca açıkça kullanılmayan kodu kaldırır, diğer tüm optimizasyonlar gerçekleştirilmez.
Büyük olasılıkla hata ayıklamaya başlarsınız (F5) ve A100 önce derler (F7) ve ardından grafiğe koyar.
Hata ayıklama için derlerken, optimize edici yalnızca açıkça kullanılmayan kodu kaldırır, diğer tüm optimizasyonlar gerçekleştirilmez .
Bu özellik hemen dikkate alındı. Şimdi kendimi tekrar kontrol ettim.
Serbest bırakma seçeneği :