"Posta" sekmesindeki ayarlar penceresinde belirtilen adrese bir e-posta gönderir. İşlev, test modunda çalışmaz. Bu işlev, özel göstergelerden de çağrılamaz. Ayarlarda gönderme yasaklanmış olabilir ve e-posta adresi de belirtilmemiş olabilir. Bir hata hakkında bilgi almak için GetLastError() işlevini çağırmanız gerekir. [...]
Göstergede itiraf ediyorum, kontrol etmedim ... :)
ZY Konunun başlığına itiraz ediyorum ve örneğin şu şekilde yeniden adlandırılmasını öneriyorum: "Yerleşik MQL4 belgelerinin iyileştirilmesi: yanlışlıkların ve eksikliklerin ortadan kaldırılması". Bunun gibi bir şey.
Daha sonra belgelerin başka yerlerinde de aynı şeyle karşılaştım.
Lütfen açıklayın, bu sadece bir programlama stili mi? Değilse, boole değişkenleri için karşılaştırma işlemini kullanma ihtiyacına ne sebep oldu? Daha basit ifade neden kullanılmıyor:
İlk ifade daha sezgiseldir ve özellikle yeni başlayanlar için herhangi bir karışıklığa neden olmaz, ancak ikinci ifade muhtemelen daha yaygın olarak kullanılır.
Çoğu zaman, değerleri hesaplama işlevleri, girdi olarak bazı parametreler gerektirir. Örneğin, OrderSend() işlevine bakarsanız, bu tür bir dizi parametre ona iletilecektir:
sembol
Sipariş türü
Lot olarak pozisyon hacmi
Açılış fiyatı
noktalarda kayma
vb. Bir işleve iletilen parametreler iki türdür - çağrılan işlevin çalışması sırasında hiçbir şekilde değişmeyenler ve içinde işlenebilenler. Örneğin, bu işlevi düşünün:
SplitString() öğesine üç parametre iletilir: başvuruya göre bir ArrayRes dizisi (önde bir & işareti vardır) ve iki resmi parametre InputStrung (parçalar için ayrıştıracağımız dize) ve ayırıcı dize (ayrıştırma sırasında sınırlayıcıdır) . Bu işlev çalıştırıldıktan sonra ArraRes dizisi birkaç dize içerecektir. MQL4'teki işlevin kendisi karmaşık türleri (örneğin bir dizi) döndürme yeteneğine sahip değildir, ancak parametreleri referansa göre ileterek bu sınırlamayı atlarız.
Seçilen emrin kapanış fiyatını verir. Sipariş, OrderSelect() işlevi kullanılarak önceden seçilmelidir.
Misal:
if(OrderSelect(10,SELECT_BY_POS,MODE_HISTORY)==true)
{
tarihsaat ctm=OrderOpenTime();
if(ctm>0) Print("Sipariş 10 için açık zaman", ctm);
ctm=SiparişKapatZamanı();
if(ctm>0) Print("Sipariş için kapanış saati 10 ", ctm);
}
başka
Print("OrderSelect başarısız hata kodu",GetLastError());
OrderClosePrice işlevi için açıklama ve OrderClosePrice işlevi için bir örnek. Muhtemelen bu nedenle, incelenen Uzman Danışmanların %99'u sipariş türünün tamamen gereksiz analizini yapıyor.
Evet, o anı geçen hafta yakaladım. Bunun gibi bir şey düşünüyorum:
if(OrderSelect(10,SELECT_BY_POS,MODE_HISTORY)==true){datetimectm= OrderOpenTime();if(ctm>0)Print("Open time for the order 10 ", TimeToStr(ctm));
doubleprice=OrderClosePrice();
if(price>0)Print("Close price for the order 10 ", DoubleToStr(price,MarketInfo(OrderSymbol(),MODE_DIGITS)));
}elsePrint("OrderSelect failed error code is",GetLastError());
Alıntı ------ SplitString() öğesine üç parametre iletilir: başvuruya göre bir ArrayRes dizisi (önde bir & işareti vardır) ve iki resmi parametre InputStrung (parçalar için ayrıştıracağımız dize) ve ayırıcı dize (ayrıştırma sırasında sınırlayıcıdır) . Bu işlev çalıştırıldıktan sonra ArraRes dizisi birkaç dize içerecektir. MQL4'teki işlevin kendisi karmaşık türleri (örneğin bir dizi) döndürme yeteneğine sahip değildir, ancak parametreleri referansa göre ileterek bu sınırlamayı atlarız. ------
Anlıyorum. Onlara neden "resmi" dediğini anlamıyorum. Bu şekilde iletilen bu parametreler tamamen formal olarak mı? C'de böyle bir şey yok.
Parametre türlerinin açıklaması neden "Fonksiyonlar" bölümünde değil de "Değişkenler" bölümünde anlatılıyor?
cout : Anlıyorum. Onlara neden "resmi" dediğini anlamıyorum. Bu şekilde iletilen bu parametreler tamamen formal olarak mı? C'de böyle bir şey yok.
Çünkü fonksiyona iletilen değişkenler oraya biçimsel olarak değişken olarak değil, değerleri olarak iletilir. Değişkenlerle bir tür manipülasyon gerçekleştirebilirsiniz (değerlerini değiştirin), ancak değerlerle bu tür manipülasyonlar boşa gider. İşte bu örneğin başka bir versiyonu:
Pekala, onlara " Parametreleri değere göre geçirme" deyin. Resmi olarak, hiçbir şeyin değerine bağlı olmadığı anlamına gelir, örneğin gelecekteki kullanım için ayrılmıştır :). Ama sonuçta, bir şey değere göre iletilen parametrelere bağlıdır, aksi takdirde formal olarak adlandırılırlardı :).
MQL5.com web sitesine giriş yapmak için çerezlerin kullanımına izin vermelisiniz.
Lütfen tarayıcınızda gerekli ayarı etkinleştirin, aksi takdirde giriş yapamazsınız.
Hesabınıza giriş yaptınız. İki faktörlü kimlik doğrulama devre dışı bırakıldı. Yeniden kurup yeni bir QR kodu tarayın veya iki faktörlü kimlik doğrulama devre dışıyken devam edin.
İşlev, test modunda çalışmaz. Bu işlev, özel göstergelerden de çağrılamaz.
Ayarlarda gönderme yasaklanmış olabilir ve e-posta adresi de belirtilmemiş olabilir. Bir hata hakkında bilgi almak için GetLastError() işlevini çağırmanız gerekir.
[...]
Göstergede itiraf ediyorum, kontrol etmedim ... :)
ZY Konunun başlığına itiraz ediyorum ve örneğin şu şekilde yeniden adlandırılmasını öneriyorum: "Yerleşik MQL4 belgelerinin iyileştirilmesi: yanlışlıkların ve eksikliklerin ortadan kaldırılması". Bunun gibi bir şey.
Daha sonra belgelerin başka yerlerinde de aynı şeyle karşılaştım.
Lütfen açıklayın, bu sadece bir programlama stili mi?
Değilse, boole değişkenleri için karşılaştırma işlemini kullanma ihtiyacına ne sebep oldu?
Daha basit ifade neden kullanılmıyor:
Daha basit ifade neden kullanılmıyor:
- sembol
- Sipariş türü
- Lot olarak pozisyon hacmi
- Açılış fiyatı
- noktalarda kayma
vb. Bir işleve iletilen parametreler iki türdür - çağrılan işlevin çalışması sırasında hiçbir şekilde değişmeyenler ve içinde işlenebilenler.Örneğin, bu işlevi düşünün:
SplitString() öğesine üç parametre iletilir: başvuruya göre bir ArrayRes dizisi (önde bir & işareti vardır) ve iki resmi parametre InputStrung (parçalar için ayrıştıracağımız dize) ve ayırıcı dize (ayrıştırma sırasında sınırlayıcıdır) .
Bu işlev çalıştırıldıktan sonra ArraRes dizisi birkaç dize içerecektir. MQL4'teki işlevin kendisi karmaşık türleri (örneğin bir dizi) döndürme yeteneğine sahip değildir, ancak parametreleri referansa göre ileterek bu sınırlamayı atlarız.
Tam komut dosyası şudur:
Kendiniz çalıştırın ve çalışmanın sonucuna bakın.
Sipariş, OrderSelect() işlevi kullanılarak önceden seçilmelidir.
if(OrderSelect(10,SELECT_BY_POS,MODE_HISTORY)==true) { tarihsaat ctm=OrderOpenTime(); if(ctm>0) Print("Sipariş 10 için açık zaman", ctm); ctm=SiparişKapatZamanı(); if(ctm>0) Print("Sipariş için kapanış saati 10 ", ctm); } başka Print("OrderSelect başarısız hata kodu",GetLastError());
OrderClosePrice işlevi için açıklama ve OrderClosePrice işlevi için bir örnek.
Muhtemelen bu nedenle, incelenen Uzman Danışmanların %99'u sipariş türünün tamamen gereksiz analizini yapıyor.
Sadece yazabildiğin zaman
------
SplitString() öğesine üç parametre iletilir: başvuruya göre bir ArrayRes dizisi (önde bir & işareti vardır) ve iki resmi parametre InputStrung (parçalar için ayrıştıracağımız dize) ve ayırıcı dize (ayrıştırma sırasında sınırlayıcıdır) .
Bu işlev çalıştırıldıktan sonra ArraRes dizisi birkaç dize içerecektir. MQL4'teki işlevin kendisi karmaşık türleri (örneğin bir dizi) döndürme yeteneğine sahip değildir, ancak parametreleri referansa göre ileterek bu sınırlamayı atlarız.
------
Anlıyorum. Onlara neden "resmi" dediğini anlamıyorum. Bu şekilde iletilen bu parametreler tamamen formal olarak mı? C'de böyle bir şey yok.
Parametre türlerinin açıklaması neden "Fonksiyonlar" bölümünde değil de "Değişkenler" bölümünde anlatılıyor?
Anlıyorum. Onlara neden "resmi" dediğini anlamıyorum. Bu şekilde iletilen bu parametreler tamamen formal olarak mı? C'de böyle bir şey yok.
Çünkü fonksiyona iletilen değişkenler oraya biçimsel olarak değişken olarak değil, değerleri olarak iletilir. Değişkenlerle bir tür manipülasyon gerçekleştirebilirsiniz (değerlerini değiştirin), ancak değerlerle bu tür manipülasyonlar boşa gider.
İşte bu örneğin başka bir versiyonu:
Resmi olarak, hiçbir şeyin değerine bağlı olmadığı anlamına gelir, örneğin gelecekteki kullanım için ayrılmıştır :). Ama sonuçta, bir şey değere göre iletilen parametrelere bağlıdır, aksi takdirde formal olarak adlandırılırlardı :).