Depuración de variables y expresiones - Versión para impresión +- Comunidad Gambas-es (https://gambas-es.org) +-- Foro: Gambas (https://gambas-es.org/forum-3.html) +--- Foro: General (https://gambas-es.org/forum-4.html) +--- Tema: Depuración de variables y expresiones (/thread-1443.html) |
Depuración de variables y expresiones - Shell - 13-07-2023 Buenas!. Me gustaría seguir la pista a una variable, pero no es una expresión. Cuando entro en modo depuración hasta el punto de interrupción para conocer el estado de la variable. Puedo decirle al editor que me agregué "el valor de una expresión" pero no el de una variable. Os muestro el código, tengo esto en el timer y ultimomilsegundo es la variable que quiero ver como cambia a lo largo de la ejecución del programa. Código: Public Sub Timer1_Timer() Entonces tengo el punto en de ruptura en la línea donde se encuentra la variable ultimomilisegundo. Pero lo que hace en realidad es mostrarme la expresión que usa "esa" variable. Y me agrega la variable que contiene una expresión donde la variable ultimomilisegundo es encontrada. (Mostrándome el resultado de la expresión). La variable que es el resultado de la expresión es esta: Código: ... A la izquierda del editor, me muestra esto: En objeto actual "si" puedo ver la variable. Lógicamente no es una expresión. Si yo ejecutase ahora F5 y F5 y F5, estaría viendo los cambios que se produce en cada ejecución y vería el valor de "ultimomilisegundo" en el objeto actual. Pero si la traza del programa salta a otra clase o modulo, le pierdo la pista a la variable "ultimomilisegundo". Cosa que no ocurre con la expresión "deltaTime". Fijaros ahora la traza se encuentra en una clase distinta. La clase RobotGenerador La variable ultimomilisegundo deja de verse, pero la expresión deltaTime es posible verla (a pesar de que el puntero de la traza se encuentre en otro lugar distinto). ¿ Es normal que no pueda ver el valor de la variable que quiero ver constantemente ?. La variable ultimomilisegundo es global ( por decirlo de alguna manera) a todo el FMain. Solo a el. Saludos Subo algo más sencillo ( probablemente sea una tontería). Se trata de saber como se actualiza la variable numero1 FMain Código: Private operacion1 As Multiplicar Y la clase Multiplicar: Código: Property op1 As Integer Use hop1 Al final será una chorrada. Saludos RE: Depuración de variables y expresiones - Shordi - 13-07-2023 No entiendo el problema. A mí, hasta donde he entendido el problema, me funciona perfectamente. ¿Qué es lo que no te funciona? Saludos RE: Depuración de variables y expresiones - Shell - 13-07-2023 (13-07-2023, 19:17)Shordi escribió: ¿Qué es lo que no te funciona? El programa no tiene problema de ejecución. Tan solo fue un ejemplo. No es importante. Imagina que lo haces con un proyecto que es tuyo. Lo que se trata es entrar en modo depuración y nunca perder de vista la variable de tu programa ( la que sea que te interesa ver ) y ver como va cambiando a lo largo de la ejecución de la aplicación en cada momento. Aunque en ese momento se encuentre el puntero en otra clase, en otro modulo, formulario, etc. Vamos que aparezca y la veas siempre. ( Que se tenga a la vista en algún lugar del editor ). A ver si es que es cosa de como trabaja el editor. Como cada uno es distinto. Ojo, variable, no expresión. ¿ Puedes ver siempre el valor que contiene en modo depuración ?. ( Esa es la cuestión ) Saludos RE: Depuración de variables y expresiones - Shell - 13-07-2023 El cambio de Gambas2 a Gambas3 tuvo sus diferencias. A mejor espero. En Gambas2 la información de la depuración se mostraba en la consola inferior. Entonces existían una serie de pestañas en esa terminal y una de ella era observar. Como ha pasado ya tantos años pues no recuerdo como era aquello y si daba la posibilidad que busco. ( Observar los cambios de una variable concreta ). En Gambas 3 según vamos ejecutando paso a paso las instrucciones, pasamos a otro lugar, donde "la variable no existe" y no se muestra, debería ser pública para eso, pero como es normal, no tiene por que serlo. Cuando volvamos durante todo ese trazado o (backtrace) al lugar donde la variable exista, se mostrará. Pero no solo se mostrará esta, se mostrará más variable y a lo mejor te interesa centrarte en solo esa , o que esta se encuentre en una parte más localizable. Por decirlo de alguna forma. ¿ Y si tiene 100 variables y ves una lista enorme de variables ?. ¿ Cómo localizas de un vistazo la que te interesa ?. A eso voy en parte. |