Hatalar, hatalar, sorular - sayfa 2332

 
Vladimir Pastushak :

Yardıma göre, dosya yoksa false döndürmesi gerekir.

Kesin olarak söylemek gerekirse, Belgelerden FileGetInteger(FileName,FILE_EXISTS) sonucunun mutlaka bool olduğu açıkça görülmez.

Ama mantık yine de zor.

https://www.mql5.com/ru/forum/1111/page1788#comment_4071879

Ошибки, баги, вопросы
Ошибки, баги, вопросы
  • 2017.02.08
  • www.mql5.com
Общее обсуждение: Ошибки, баги, вопросы
 

Site motoru, makroyu kırmızıyla vurgulamıyor.

 
Vladimir Pastushak :

bool file_exists=(bool)FileGetInteger(FileName,FILE_EXISTS);

Her durumda, dosya var olsun veya olmasın true döndürür ve dosya yoksa 5019 hatası verir. Yardıma göre, dosya yoksa false döndürmelidir.

bool file_exists=FileIsExist(FileName); doğru çalışıyor

doğru olacak

 bool file_exists= FileGetInteger (FileName, FILE_EXISTS )== 1 ; 
 
Vladimir Pastushak :

mt 5'te anladım

Lütfen çalışma kodunu PM yoluyla sağlayın

 
fxsaber :

Site motoru, makroyu kırmızıyla vurgulamıyor.

Vurgulama, yalnızca makro daha önce tanımlanmışsa olmalıdır

 #define PRICEST_TICK_PRICE bid
//...
#define PRICEST_TICK_PRICE ask

yoksa makronun daha önce tanımlanmadığı nasıl anlaşılır?! ve bu rastgele bir geçersiz kılma değil

Bazen MetaEditor'da bile çalışır:


 
A100 :

Vurgulama, yalnızca makro daha önce tanımlanmışsa olmalıdır

yoksa makronun daha önce tanımlanmadığı nasıl anlaşılır?! ve bu rastgele bir geçersiz kılma değil

Ardından, vurgulanan makronun ne anlama geldiğine ve neyin vurgulanmadığına karar vermeniz gerekir?

Tüm makroların vurgulandığını sanıyordum. Görünüşe göre kural farklı.

 
fxsaber :

Ardından, renkle vurgulanan bir makronun ne anlama geldiğine ve neyin vurgulanmadığına karar vermeniz gerekir?

Tüm makroların vurgulandığını sanıyordum. Görünüşe göre kural farklı.

Neden arkadan aydınlatmaya ihtiyacınız olduğuna karar vermeniz gerektiğini düşünüyorum: güzellik için mi yoksa bilgi içeriği için mi? Şimdi böyle bir kural yok:

Genel olarak, tanımlayıcı önceden tanımlanmışsa ve iptal edilmemişse (undef), renkli olarak vurgulanması istenir.

 
A100 :

Neden arkadan aydınlatmaya ihtiyacınız olduğuna karar vermeniz gerektiğini düşünüyorum: güzellik için mi yoksa bilgi içeriği için mi? Şimdi böyle bir kural yok:

Benim için kural uygundur: makro her zaman kırmızıdır.

 
fxsaber :

Benim için kural uygundur: makro her zaman kırmızıdır.

Buradaki kolaylık nerede?
 #define PRICEST_TICK_PRICE bid

Rahatsızlık nedir - açık: PRICEST_TICK_PRICE tanımlayıcısının daha önce tanımlanıp tanımlanmadığını anlamak imkansız

Ve neden burada olsun ki (3)

 //Ln 240
#define PRICEST_TICK_PRICE ask //(1)
#undef   PRICEST_TICK_PRICE     //(2)
void OnStart ()
{
         int PRICEST_TICK_PRICE; //(3)
}

kırmızı olmak? Ve eğer burada (3) kırmızı değilse, o zaman neden (1)'de kırmızı olsun?

Kullanışlı bir kural: Bir tanımlayıcı, yalnızca önceden (!) tanımlanmışsa ve iptal edilmemişse kırmızıdır

 

A100 :
А в чем здесь удобство?

Makro olduğunu görüyorum. Bu durumda #define görmek için çevresel görüş gerekli değildir.

Rahatsızlık nedir - açık: PRICEST_TICK_PRICE tanımlayıcısının daha önce tanımlanıp tanımlanmadığını anlamak imkansız

Asla renkle anlatmaya çalışmadım. Ayrıca, her şey #ifdef'teyse, MQL4 ve MQL5'in farklı vurguları olabilir. En kolay yol, makronun var olup olmadığını görmek için makro adında ALT+G yapmaktır.

Kullanışlı bir kural: Bir tanımlayıcı yalnızca daha önce (!) tanımlanmışsa kırmızıdır

#define, #ifdef, #undef, vb. bir yerde makrodan en az bir kez bahsedilmesi benim için uygun olur. Tanımlanmasa bile.