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
Ha surgido un problema, no sé dónde ponerlo.
Aquí está la sección de código que me interesa:
Dice que primero hay que desimprimir el valor de la variable itogo con el texto "itogo do",
entonces si itogo es más de 1000 entonces imprime itogo con el texto "itogo>1000 "
itogo se asigna 500
Imprime itogo con el texto "vsego_if=" y luego deja la zona protegida
imprimir itogo con el texto "itogo posle="
trazar una línea.
¿Por qué entro en detalles?
debe quedar claro que si no había ninguna condición, habrá dos líneas entre ellas; si había una condición, habrá cuatro líneas.
Sabemos que cuando la condición se dispara el valor de la variable cambiará.
Veo la desimpresión de la que se desprende que la condición no se ha disparado, pero el valor de la variable ha cambiado.
¿Cómo puede ser esto ??????????
Aquí hay una captura de pantalla del código para mostrar que nada entre las líneas, más allá de los límites del campo, está oculto.
El código se bloquea en absoluto, compila sin problemas pero se niega a funcionar como está previsto.
La variable está declarada globalmente int, el código en sí es grande pero las impresiones no están en ninguna otra parte del código.
Y lo más interesante con el depurador funciona bien, pero cuando se ejecuta en modo normal, aquí hay tales cambios
y esto no es el bot de las impresoras en la lógica del programa veo que algo está mal.
Todavía no he podido reproducirlo en otros ejemplos, pero esta parece ser la solución
Anteriormente existía DebugBreak(); y el código se ejecutaba a través del depurador, posteriormente se eliminó DebugBreak() y se recompiló todo
pero aparentemente ME recuerda que se utilizó el depurador y se niega a funcionar correctamente sin un depurador después de la compilación.
Si ejecuto el depurador, incluso en el arranque normal el script funciona bien.
Todavía no he podido reproducirlo en otros ejemplos, pero esta parece ser la solución
Anteriormente existía DebugBreak(); y el código se ejecutaba a través del depurador, posteriormente se eliminó DebugBreak() y se recompiló todo
pero aparentemente ME recuerda que se utilizó el depurador y se niega a funcionar correctamente sin pasar por él después de la compilación.
Si lo ejecutas a través del depurador, el script funciona bien incluso durante el funcionamiento normal.
¿Y lo llaman liberación?
El posible participante del Campeonato 2010 ha escrito un Asesor Experto y lo ha depurado, pero las cosas del depurador permanecen en el código. Sin embargo, el Asesor Experto funciona bien. Sin embargo, sólo funciona con "trucos". No obstante, el participante no lo sabe, ¿cómo podría conocer una característica tan indocumentada?
Así que ese participante envió el código fuente de su EA a MetaQuotes para que participara en el Campeonato 2010 y ellos se limitaron a compilarlo y, por supuesto, el código resultó limpio sin ninguna "cosa de depurador".
El Campeonato 2010 está en marcha, pero el Asesor Experto MetaQuotes de alguna manera no opera de la misma manera que en su ordenador. Un participante está perplejo y tiene todo tipo de pensamientos...
Ha surgido un problema, no sé ni dónde ponerlo.
He hecho este código como ejemplo (he puesto sus valores):
Ha funcionado bien:
Como puede ver, no hay errores ni incoherencias en los valores de las variables.
Tal vez se olvidó de recompilar el código después de numerosas reediciones y utilizó una versión antigua.
Lo que tienes que hacer:
Deja de ponerte histérico de una vez.
Si se confirma este error, se corregirá inmediatamente. El desarrollo de software no puede continuar sin errores.
Deja de ponerte histérico de una vez.
Si se confirma este error, se corregirá inmediatamente. El desarrollo de software no puede continuar sin errores.
Renat, sugiero abrir el tema "Crítica a MQL5" o algo similar. Y todos los mensajes de este tipo de otros temas (hilos) deben ser borrados como off-top.
De este modo, los críticos tendrán la posibilidad de expresar su punto de vista, y los hilos se comportarán bien.
Me gustaría saber el destino de la solicitud#18261 parauna llamada a un indicador desde un EA (el valor no coincide con el indicador).
Sería bueno que respondieran de alguna manera...
Me gustaría saber el destino de la solicitud #18261 para una llamada a un indicador desde un EA (el valor no coincide con el indicador).
Sería bueno que respondieran de alguna manera...
Su solicitud ha sido atendida. Se aconsejó.
Por qué no se ha actualizado en su perfil - lo averiguaremos.
He hecho este código como ejemplo (pon tus valores):
Ha funcionado bien:
Como puede ver, no hay errores ni incoherencias en los valores de las variables.
Es posible que después de numerosas reediciones se haya olvidado de recompilar el código y haya utilizado una versión antigua.
Qué hacer:
Y antes de postear aquí hice lo mismo, y el resultado fue el que tú tienes pero aquí en la hoja donde inicialmente surgió el error todo y se cae.
Repito la razón en el depurador, si en esa hoja de trabajo en particular hizo la recompilación y no se ejecutó a través de la depuración funciona incorrectamente, después de una ejecución en la depuración todo es normal. No sé por qué el depurador se enganchó a esta hoja de trabajo en particular, las copias de código en otras hojas de trabajo funcionan bien, pero esta no.
Por eso escribí arriba que no puedo reproducir el error hasta ahora (o mejor dicho, se reproduce pero sólo dentro del proyecto localizado).
Tal vez hay una característica del depurador o ME para recordar el historial de ediciones, tal vez hubo un error crítico antes del incidente al que no presté atención.
Y yo hice lo mismo antes de postearlo aquí, y el resultado fue como el tuyo, pero en la hoja donde se produjo el error originalmente, todo se bloquea.
Repito la razón en el depurador, si recompilé en la hoja específica y no la pasé por el depurador funciona incorrectamente, después de depurar todo es normal. No sé por qué el depurador se enganchó a esta hoja de trabajo en particular, las copias de código en otras hojas de trabajo funcionan bien, pero esta no.
Por eso escribí arriba que no puedo reproducir el error hasta ahora (o mejor dicho, se reproduce pero sólo dentro del proyecto localizado).
Tal vez hay una característica del depurador o ME para recordar la historia de las ediciones, tal vez hubo un error crítico antes del incidente, al que no presté atención.
¿Recuerdas dónde se ha establecido DebugBreak()?
No ha habido suerte en reproducirlo hasta ahora.