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
Bu bir hatadan ziyade anlamsal olabilir.
ObjectDelete'in amacı "belirtilen ada sahip nesneyi kaldırmaktır".
İşlevi çalıştırmanın sonunda, grafikte hala "Varolmayan Nesne" adlı bir nesne var mı? Hayır... peki bu başarı mı?
Başka bir açıdan bakıldığında, ObjectDelete "Varolmayan Nesne" adlı bir nesneyi kaldırdı mı? Hayır... peki bu başarısızlık mı?
Başarıyı sonuçla mı yoksa yapılan eylemle mi ölçüyorsunuz?
Belki de, işlev çalıştırıldıktan sonra adlandırılmış nesne grafikte kalırsa bir false beklenebilir. Aksi takdirde, bu bir başarıydı.
evet yazacağım. Onayınızı bekliyordum. Teşekkürler.
Servis Masası'na bildirmeye çalıştım ve "Veri kaydedilirken hata oluştu" mesajımı kabul etmiyor.
Ayrıca farklı bir konumdan, bilgisayardan ve tarayıcıdan ( VPS'imi kullanarak) denedim ve aynısı oldu.
Kendi başınıza rapor edebildiniz mi?
Bu bir hatadan ziyade anlamsal olabilir.
ObjectDelete'in amacı "belirtilen ada sahip nesneyi kaldırmaktır".
İşlevi çalıştırmanın sonunda, grafikte hala "Varolmayan Nesne" adlı bir nesne var mı? Hayır... peki bu başarı mı?
Başka bir açıdan bakıldığında, ObjectDelete "Varolmayan Nesne" adlı bir nesneyi kaldırdı mı? Hayır... peki bu başarısızlık mı?
Başarıyı sonuçla mı yoksa yapılan eylemle mi ölçüyorsunuz?
Belki de, işlev çalıştırıldıktan sonra adlandırılmış nesne grafikte kalırsa bir false beklenebilir. Aksi takdirde, bu bir başarıydı.
Bu durumda, MQL4 ve MQL5 arasındaki işlevsellik farkı, belgelerde rapor edilmez veya açıklanmaz!
Kabul. Sadece "onlar"ın hangisinin doğru olduğunu merak ediyorum :-)
Şahsen, gerçeğe dönmenin daha iyi olduğunu düşünüyorum. Aksi takdirde, 4202 hata veren nesnenin var olup olmadığını kontrol etmek için fazladan kod eklemeniz gerekir.
Kabul. Sadece "onlar"ın hangisinin doğru olduğunu merak ediyorum :-)
Şahsen, gerçeğe dönmenin daha iyi olduğunu düşünüyorum. Aksi takdirde, 4202 hata veren nesnenin var olup olmadığını kontrol etmek için fazladan kod eklemeniz gerekir.
Bence, her iki durumda da, hangi sürümün "doğru" olduğuna bakılmaksızın, silmeden önce nesnenin varlığının kontrol edilmesi gerekir.
EDIT: Bununla birlikte, MQL4 ile aynı şekilde çalışacak şekilde "düzelttiklerini" umuyorum. Aksi takdirde, her iki sürümde de derlemek için yapılan koda koşullu derleme yerleştirmemiz gereken işlevsellikte başka bir fark olacaktır.
Bence, her iki durumda da, hangi sürümün "doğru" olduğuna bakılmaksızın, silmeden önce nesnenin varlığının kontrol edilmesi gerekir.
İlginç! Gitmesini istiyorsan neden var olduğunu kontrol etmen gerekiyor?
Var olmayan bir nesnenin var olup olmadığını kontrol etmek için geçen süre, MT4'te var olmayan bir nesneyi silmeye çalışmakla büyük ölçüde karşılaştırılabilir (ve MT5'te üstünkörü bir inceleme, bunun önemli ölçüde daha yavaş olduğunu gösterir), bu nedenle herhangi bir somut performans avantajı göremiyorum kontrolü çalıştırarak. Ancak kodunuza daha fazla satır ekleyecektir.
EDIT: Bununla birlikte, MQL4 ile aynı şekilde çalışacak şekilde "düzelttiklerini" umuyorum. Aksi takdirde, her iki sürümde de derlemek için yapılan koda koşullu derleme yerleştirmemiz gereken işlevsellikte başka bir fark olacaktır.
İlginç! Gitmesini istiyorsan neden var olduğunu kontrol etmen gerekiyor?
Var olmayan bir nesnenin var olup olmadığını kontrol etmek için geçen süre, MT4'te var olmayan bir nesneyi silmeye çalışmakla büyük ölçüde karşılaştırılabilir (ve MT5'te üstünkörü bir inceleme, bunun önemli ölçüde daha yavaş olduğunu gösterir), bu nedenle herhangi bir somut performans avantajı göremiyorum kontrolü çalıştırarak. Ancak kodunuza daha fazla satır ekleyecektir.
Kullanıcının yanlışlıkla silip silmediğini ve yeniden oluşturulması gerekip gerekmediğini tespit etmek istediğinizde. Bunu genel "temizlik" olarak kastettim ve tek seferlik bir silme işlevi için değil.
Ama evet, katılıyorum, bir "OnDeinit()" işlevi için önce onu test etmeye gerek yok.
Kullanıcının yanlışlıkla silip silmediğini ve yeniden oluşturulması gerekip gerekmediğini tespit etmek istediğinizde. Bunu genel "temizlik" olarak kastettim ve tek seferlik bir silme işlevi için değil.
Ama evet, katılıyorum, bir "OnDeinit()" işlevi için önce onu test etmeye gerek yok.
Ah, anlıyorum.
Yan not olarak:
void OnStart ()
{
string name = "MysteryObject" ;
ulong begin;
begin = GetMicrosecondCount ();
for ( int i= 0 ; i< 1000 ; i++) int result = ObjectFind ( 0 ,name);
printf ( "ObjectFind took %i μs" , GetMicrosecondCount ()-begin);
begin = GetMicrosecondCount ();
for ( int i= 0 ; i< 1000 ; i++) bool result = ObjectDelete ( 0 ,name);
printf ( "ObjectDelete took %i μs" , GetMicrosecondCount ()-begin);
}
MT4 üzerinde çalıştırmak , içinde fazla bir şey yok.
MT5 üzerinde çalıştırıldığında , 50 kattan daha yavaştır.
Nedeniyle ilgili bilgisi olan var mı?
Yan not olarak:
MT4 üzerinde çalıştırmak , içinde fazla bir şey yok.
MT5 üzerinde çalıştırıldığında , 50 kattan daha yavaştır.
Nedeniyle ilgili bilgisi olan var mı?