Son accesibles desde todo el objeto. Eventos, funciones, etc.
Son accesibles sólo desde el procedimiento en las que han sido declaradas.
Pero hay que tener especial cuidado con las variables globales cuando un objeto es llamado repetidamente (parte de su código se ejecuta 2 ó más veces), ya que las variables globales, a diferencia de las locales, guardan su valor entre las llamadas. Por el contrario, las variables locales son inicializadas cada vez.
Ejemplo mediante un CommandButton en un Form:
myBoton - OnPush()
varGlobal := varGlobal + 1;
varLocal := varLocal + 1;
MESSAGE('Global = %1\Local = %2', varGlobal, varLocal);
La variable global irá aumentando su valor tantas veces como se pulse el botón, no así la local que siempre será 1.
Esta casuística cobra especial importancia cuando se llaman objetos desde otros objetos, ya que esta regla se cumple en todos los casos, o sea, las variables globales del objeto llamado permanecen mientras permanezca el objeto.
No hay comentarios:
Publicar un comentario