Errores, fallos, preguntas - página 1172
![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
Hay errores en la biblioteca estándar de MQL4, concretamente en las clases indicadoras.
En la clase CiATR falta el cuerpo del método GetData.
En los indicadores que utilizan parámetros del tipo ENUM_APPLIED_VOLUME(CiForce, CiOBV) se produce un error: no se puede utilizar un enumerador inadecuado
Por cierto, ENUM_APPLIED_VOLUME parece ser una enumeración estándar; está presente en la documentación de MQL4, pero de hecho está ausente ('ENUM_APPLIED_VOLUME' - identificador no declarado).
Así que, por favor, compruebe todas sus bibliotecas. Tengo la sensación de que fueron portados apresuradamente desde MT5 sin siquiera comprobar su funcionalidad.
Error de comp ilación, build 966
la construcción 932 está biendepende del contenido del comentario
está bien
Los comentarios nunca se sustituyen - el compilador simplemente los ignora, de lo contrario #define en la mayoría de los casos no podría ser utilizado con comentarios en absoluto //
En cualquier caso, sustituya // por /**/ en https://www.mql5.com/ru/forum/1111/page1190#comment_993854El resultado es el mismo: error de compilación.
Por favor, explique la siguiente situación. Tengo un indicador multidivisa, cuyos valores no cambian dependiendo del gráfico al que esté unido - calcula los valores para los instrumentos especificados y no está relacionado con la ventana actual. Dibujo manualmente las líneas de soporte y resistencia en este indicador. Ahora el truco: si arrastro otra herramienta de la visión general del mercado a la ventana, el aspecto del indicador sigue siendo el mismo y las líneas desaparecen. Si abre el cuadro de diálogo de la Lista de Objetos, esos objetos siguen apareciendo allí. Los valores de los puntos finales (fechas y valores) siguen siendo los mismos (es decir, deben ser visibles en los mismos lugares) - es comprensible, no han sido cambiados. Sin embargo, las líneas no son visibles. Si a continuación arrastra la antigua herramienta que estaba allí en la ventana, las líneas vuelven a ser visibles. ¿Cuál es el problema?
Encontrado y corregido.
Gracias por contactar conmigo. Resulta ser un error genérico - siempre ha funcionado así antes
No se puede aplicar el operador abreviado !() - error de compilación
Si el compilador entiende (y lo hace) que f4( a ) significa que 'a' es un objeto y no un puntero/scriptor como un número)
también debería entender que !a' significa lo mismo para 'a' (objeto, no puntero/numérico)
En otras palabras, si
a1.f() y a2.f() significan lo mismo, tanto si a1, como si a2 es un puntero o un objeto, ¿cómo es peor el operador !()?Debo añadir que, por ejemplo, no hay ningún error de compilación con operator+(), ni tampoco lo hay si simplemente añadimos operator+(), que no se utiliza en absoluto, al primer ejemplo anterior
pero en este caso se produce otra incertidumbre