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
Sí, claro, y qué. He sometido el lugar a todo tipo de comprobaciones.
Conozco el lugar, ¡no entiendo por qué sucede!
Compruebo el tamaño de la matriz antes de esta línea y otras variables para los valores atípicos.
Pero aún así el Asesor Experto se bloquea un par de veces a la semana.
Lo más probable es que sea un error mío, y no estoy en contra de ello. Estoy en contra del hecho de que no tengo ningún mecanismo para averiguar dónde está enterrado el perro.
Al mismo tiempo, existe un mecanismo de exclusión sencillo y cómodo. Se introdujeron justo para estos casos.
Renat me contestó que si introducen este mecanismo, los programadores imprudentes empezarán inmediatamente a cometer errores y tendrán que limpiarlo.
Ese es un argumento ridículo, en mi opinión.
Por cierto, como alternativa a las excepciones, podrías implementar un simple manejador de eventos OnError, como este
Por cierto, como alternativa a las excepciones, podrías implementar un simple manejador de eventos OnError, como este
Creo que eso me habría satisfecho, aunque no del todo, ya que habría necesitado declarar las variables necesarias como globales para que fueran visibles en OnError.
Pero de todos modos me alegraría. A veces sólo hay que detectar un error, después de encontrar y solucionar el problema se puede volver a ocultar en el local.
¿Cómo se podría transmitir esta idea sobre OnError a Renat?
Creo que me satisfizo, aunque no del todo, porque hubiera sido necesario declarar las variables requeridas como globales para que fueran visibles en OnError.
Pero de todos modos me habría alegrado. Sólo hay que coger un error a veces, después de encontrar y arreglar el problema podría ocultarlos en local de nuevo.
¿Cómo llevar esta idea de OnError a Renat?
No como una cuestión de principios. Si un programa se encuentra con un error crítico, su destino es sólo ser descargado.
Cada función importante tiene códigos de retorno, todo está detallado. Por lo tanto, el desarrollador no pierde el control de su programa.
ps: es sorprendente, por supuesto, escuchar "¡no es suficiente!", incluso después de una clara indicación del lugar de desindexación.
Utilizar la comprobación de código incorporada, las mismas aserciones.
Bueno, la situación aquí es diferente. Una persona tiene un error esporádico (que se reproduce raramente en condiciones poco claras). El Asesor Experto se bloquea de todos modos. Si pone Assert, obtendrá el mismo error pero no inmediatamente y no estará claro por qué. Por eso le pido que me enseñe el código.
Y por último, podría ser útil que esos errores que hacen que el script se detenga fueran acompañados no sólo de la ubicación, sino del contexto completo: pila de llamadas, contenido de las variables, etc. Puede hacer que dicha salida sea opcional utilizando la directiva del preprocesador, es decir, especificar el nivel de diagnóstico de errores: déjelo como está por defecto pero permita que sea similar.
Bueno, la situación aquí es diferente. Una persona tiene un error esporádico (que se reproduce raramente en condiciones poco claras). El Asesor Experto se bloquea de todos modos. Si pone Assert, obtendrá el mismo error pero no inmediatamente y no estará claro por qué. Por eso le pido que me enseñe el código.
Y por último, podría ser útil que esos errores que hacen que el script se detenga fueran acompañados no sólo de la ubicación, sino del contexto completo: pila de llamadas, contenido de las variables, etc. Es posible hacer que esta salida sea opcional utilizando la directiva del preprocesador, es decir, especificar el nivel de diagnóstico de errores: déjelo como está por defecto, pero haga posible incrementarlo.
El contexto completo puede ser rastreado durante la depuración.
Otra cosa es que los errores esporádicos deban captarse en determinados fragmentos.
Y ahí es donde surge la necesidad. Ejecutar el depurador en el historial.
El problema es antiguo y se ha planteado muchas veces, pero sigue ahí.
Bueno, la situación aquí es diferente. Una persona tiene un error esporádico (que se reproduce raramente en condiciones poco claras). El Asesor Experto se bloquea de todos modos. Si pone Assert, obtendrá el mismo error pero no inmediatamente y no estará claro por qué. Por eso le pido que me enseñe el código.
El 95% de los errores esporádicos están relacionados con errores de inicialización o con la falta de ella. Por lo tanto, un fragmento de código no servirá de nada y todo el código no servirá por paranoia ;-)
La razón debe buscarse muy lejos del lugar de la manifestación, y es aburrido para el afthar sólo exigir que se dispare a los promotores. Seguro que le ayudará.
// Será de gran ayuda, falkov : )
El contexto completo puede ser rastreado por la depuración.
Otra cosa es que los errores esporádicos se detecten en determinados fragmentos.
Y ahí es donde surge la necesidad. Ejecutar el depurador en el historial.
El problema es antiguo y se ha planteado muchas veces, pero sigue ahí.
Bueno, la situación aquí es diferente. Una persona tiene un error esporádico (que se reproduce raramente en condiciones poco claras). El Asesor Experto se bloquea de todos modos. Si pone Assert, obtendrá el mismo error pero no inmediatamente y no estará claro por qué. Por eso le pedí que me enseñara el código.
No tiene sentido mostrar el código, porque hay una lógica bastante complicada, que necesita entender, y la sección de error en sí es simple, pero no da nada para encontrar el error, hay media pantalla de puro código. Se comprueba que cada variable tiene límites en la parte inferior y en la superior. Si la variable supera estos límites, se muestra un mensaje con una lista de todas las variables y sus valores. Por supuesto que hay un error en alguna parte, ¡¡¡pero ahí está!!! Permítanme recordarles que esto ocurre una o dos veces por semana. El Asesor Experto ha estado trabajando sin descanso.
Y entonces me interesa no sólo este caso en particular, aunque es mi primera vez.
Y una última cosa, quizás sería útil que esos errores que hacen que el script se detenga, fueran acompañados no sólo de la ubicación, sino del contexto completo: pila de llamadas, contenido de las variables, etc. Se puede hacer que esta salida sea opcional mediante una directiva del preprocesador, es decir, especificar el nivel de diagnóstico de errores: dejarlo como está por defecto, pero permitir hacerlo más complejo.
¡Eso sería genial! ¡Un contexto completo me permitiría sin duda encontrar el error! Lo que necesito es mirar las variables en el momento del error, antes de que salga el Asesor Experto.
¡Querido Renat! ¿Tal vez puedas hacer esto?