Errores, fallos, preguntas - página 2333

 
Vladimir Pastushak:

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

En cualquier caso devuelve true si hay archivo o no, y el error 5019 si no hay archivo. Según la ayuda, debería devolver false si no hay ningún archivo.

bool file_exists=FileIsExist(FileName); Funciona correctamente

Por favor, decida qué variante de la función quiere utilizar - https://www.mql5.com/ru/docs/files/filegetinteger


Документация по MQL5: Файловые операции / FileGetInteger
Документация по MQL5: Файловые операции / FileGetInteger
  • www.mql5.com
[in]  Идентификатор свойства файла. Значение может быть одним из значений перечисления ENUM_FILE_PROPERTY_INTEGER. Если используется второй вариант функции, то можно получать значения только следующих свойств: [in]  Указывает на местоположение файла. Если параметр равен false, то просматривается каталог данных терминала, в противном случае...
 
fxsaber:

Me sentiríacómodo si una macro se menciona al menos una vez en alguna parte de #define, #ifdef, #undef, etc. Aunque no esté definido.

Esto se debe a que tienes muchos identificadores en mayúsculas, mientras que hay una regla tácita de que las mayúsculas están reservadas para las macros (el resaltado de las macros no es de color sino de fuente)

 
A100:

Esto se debe a que tienes muchos identificadores en mayúsculas, mientras que hay una regla tácita de que las mayúsculas están reservadas para las macros (el resaltado de las macros no es de color sino de fuente)

No. Conveniente porque la lógica es inequívoca.

 
fxsaber:

No. Conveniente porque la lógica es inequívoca.

Mi lógica es simple: X antes de #define X aún no es una macro, y después de #undef X ya no es una macro (respectivamente X se colorea sólo donde es una macro)
 
A100:
Mi lógica es simple: X antes de #define X aún no es una macro y después de #undef X ya no es una macro (respectivamente X se resalta sólo donde es una macro)

Yo uso mqh, que no tiene #define, pero sí tiene #ifdef. No está claro por qué no deben destacarse.

 
fxsaber:

Nunca he tratado de determinar por el color. Además, si todo está en #ifdef, MQL4 y MQL5 pueden tener diferentes subcolores. La forma más fácil es hacer ALT+G sobre el nombre de la macro para ver si está o no.

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

Cuando estoy en la línea (3) pulso ALT+G -> paso a la línea (1).

Pregunta: ¿está la macro o no?

 
A100:

Cuando estoy en la línea (3), pulso ALT+G para ir a la línea (1).

Pregunta: ¿está la macro o no?

No entiendo tus lamentos, por decirlo suavemente. Sé cómo trabajar con macros. Sé muy bien lo que significa ALT+G y cómo se puede deshacer una macro mediante #undef. Me gusta el comportamiento de este editor en particular.

El empollón a veces es bueno, pero no en este caso.

 
fxsaber:

Yo uso mqh, que no tiene #define, pero sí tiene #ifdef. No está claro por qué no deben destacarse.

Si antes no hay #define X, entonces X en #ifdef X - no se resalta (*) porque - aquí todo es normal (al menos en MetaEditor)

Sólo tengo una pregunta para los Desarrolladores: por qué en el MetaEditor se resalta X en #define X, si antes no existía #define X, mientras que arriba sucede en (*)

Su pregunta era la contraria: ¿por qué no se destaca X en el sitio

 

¿Qué propiedad del símbolo es responsable de prohibir una posición abierta SL/TP?


 
fxsaber:

¿Qué propiedad del símbolo es responsable de prohibir una posición abierta SL/TP?


Probablemente el mercado o la ejecución instantánea