Anuncios

Bienvenidos sean a este post, como mencionamos en el post anterior una variable es llamada Global cuando es accesible por todo el programa y se la denomina Local cuando solamente es parte de la funcion o sub donde fue creada.

Anuncios
Anuncios

La diferencia mas marcada entre estos dos tipos de variables son que la global podra ser accedida por todo el codigo, incluye funciones y subs, las locales solamente para la funcion o sub donde fueron creadas, las variables globales permanecen en memoria mientras el programa sigue corriendo, las locales solo mientras se usa a la funcion o sub.

En VBScript no tenemos la posibilidad de declararlas como estaticas, como si nos permite lenguajes mas potentes, si bien nosotros no podemos utilizarlas como en C++ donde este tipo de variables mantienen su valor entre las distintas llamadas a la funcion o metodo donde se haya definido, si nosotros necesitamos mantener valores entre las distintas funciones o sub se debe hacer por medio de las variables globales.

Una particularidad de las globales es que pueden ser publicas o privadas, si no se declara las variables son explicitamente publicas (public), sin embargo podemos usar la palabra private para hacerlas privadas, la diferencia entre ambos es que una variable publica puede ser accedida hasta por otros scripts que corran la mismo tiempo, en cambio con private podran acceder a la variable pero no al valor de la misma, para ver el concepto de variables usemos el siguiente ejemplo:

vars.vbs

dim total

total = 12

sub unaRutina()
	dim total
	total = 6
	wscript.echo("el total de unaRutina: " & total)
end sub

sub otraRutina()
	wscript.echo("el total de otraRutina: " & total)
end sub

unaRutina
otraRutina
Anuncios

En este caso primero creamos una variable global llamada total a la cual le asignaremos un valor, despues crearemos un sub llamado unaRutina, en la cual crearemos otra variable llamada total, le asignaremos otro valor y lo mostraremos en pantalla, en el proximo sub mostraremos el valor de total pero en este caso el global, nuestros ultimos dos pasos seran llamarlos al ejecutarlos tendremos estas dos salidas

Anuncios

Como pueden observar al llamar nos mostrara el valor de total de unaRutina, cuando llamamos a otraRutina nos mostrara el valor de total pero global y como se habran dado cuenta la otra sub no afecto a la global porque mencionamos antes las variables locales solo afectan al entorno donde fueron creadas, por eso a la hora de crear las variables deben tener en cuenta si necesitan una variable que pase informacion por todo el programa necesitan una global, ya sea tanto para enviar como para recibir, y en si solamente necesitan una de forma temporal para intercambiar informacion en un sub o funcion deben utilizar una local redefiniendo la misma como vimos en el ejemplo.

Anuncios

En resumen, hoy hemos visto los tipos de variables, que es una variable global, que es una variable local, como se definen, para que se usan, un ejemplos para ver como trabajan diferentes, espero les haya sido util sigueme en tumblr, Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.

Anuncios

Tengo un Patreon donde podes acceder de manera exclusiva a material para este blog antes de ser publicado, sigue los pasos del link para saber como.

Tambien podes comprar mi libro sobre VBscript en Amazon

Tambien podes donar

Es para mantenimiento del sitio, gracias!

$1.00