Errores, fallos, preguntas - página 2074
![MQL5 - Lenguaje de estrategias comerciales para el terminal de cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Cuando se utiliza el indicador de la ventana inferior, la escala automática no funciona correctamente.
Si se requieren dos búferes en la ventana de datos, pero sólo el primer búfer participa en el dibujo, y el segundo búfer tiene el tipo "DRAW_NONE" - sin dibujo, el escalado es realizado por el segundo búfer (los valores del segundo búfer son más que el primero), aunque el escalado no debería ser realizado por él (tipo "DRAW_NONE").
El primer búfer tiene una precisión de 6 decimales (por ejemplo - 0,0001249 indicador de CA). El segundo búfer contiene los valores -2, -1,0,1,2 (análogo - no, indefinido, sí, etc.)
Cuando se utiliza el indicador de la ventana inferior, la escala automática no funciona correctamente.
Si se requieren dos búferes en la ventana de datos, pero sólo el primer búfer participa en el dibujo, y el segundo búfer tiene el tipo "DRAW_NONE" - sin dibujo, el escalado es realizado por el segundo búfer (los valores del segundo búfer son más que el primero), aunque el escalado no debería ser realizado por él (tipo "DRAW_NONE").
El primer búfer tiene una precisión de 6 decimales (por ejemplo - 0,0001249 indicador de CA). El segundo búfer contiene los valores -2, -1,0,1,2 (análogo - no, indefinido, sí, etc.)
¿Por qué el compilador no dice nada?
¿No creamos constantes con nombre al declarar la enumeración y el nombre "cero"=1 no ocupaba el nivel global?¿Por qué el compilador no dice nada?
Por la misma razón.
Uso ::.Por la misma razón.
Uso ::.Gracias.
El enunciado :: funciona. Y funciona incluso si el enum se especifica dentro de OnStart()
Es que si fuera una función, sería comprensible. También se describe en la ayuda.
Pero el cero aquí es una constante inicializada. Pensé que eran cosas diferentes.
Por eso he preguntado: ¿por qué el compilador no genera una advertencia de que el nombre cero ya se utiliza en el contexto global?
¿Dónde está escrito en la ayuda? ¿O no está documentado?
¿Por qué el compilador no genera una advertencia de que el cero ya se está utilizando en un contexto global?
Un error. Si no fuera un enum sino una variable, generaría "la declaración de 'xxx' oculta la declaración global en la línea yyy". Escribir en la SD.
Se arreglará en la nueva versión.
Fallo. Si no fuera un enum sino una variable, devolvería "la declaración de 'xxx' oculta la declaración global en la línea yyy". Escribir en la SD.
Lo escribí en SD.
Y si consideramos el caso cuando el enum está dentro de OnStart().
Tampoco generará el aviso.
¿Qué tiene que ver con el contexto? Todo sucede dentro de una función aquí...
Resulta que no se comprueba que los nombres de las constantes de enum estén ocupados en absoluto. Se sustituyen en el código antes de las comprobaciones. ¿Te parece que es así?La SD ha escrito.
Y si consideramos el caso de enum dentro de OnStart().
Tampoco generará un mensaje de advertencia.
¿Qué tiene que ver con el contexto? Aquí todo ocurre dentro de una función.
Resulta que no se comprueba que los nombres de las constantes de los enum estén ocupados en absoluto. Se sustituyen en el código antes de las comprobaciones. ¿Se ve así?Ya lo has escrito en SD.
Estoy escribiendo un EA,
cuando habilité la optimización en MT5, me aparece la pantalla azul W10x64 b1653 repetidamente
¿Puede ser que alguien se haya enfrentado a este fenómeno?
¿Cuál es el motivo?