Introducción al Ámbito de las variables
LalospTrabajo30 de Agosto de 2012
1.163 Palabras (5 Páginas)358 Visitas
Introducción al Ámbito de las variables
Escrito por rdc
Ámbito de las variables
Ámbito de aplicación se refiere a la visibilidad de una variable, donde se puede acceder a una variable dentro de un programa. Antes de poder entender los diferentes niveles de alcance, es necesario entender la estructura de un programa en FreeBasic .
Estructura del Programa
Un programa completo se compone de uno o más. Archivos bas, llamados módulos. Cada módulo puede contener código de nivel de módulo, y el código contenido dentro de subrutinas y funciones. Código de nivel de módulo es código que se no contenida dentro de una subrutina o función. El siguiente código ilustra las diversas partes de un módulo.
Dim aint Como Integer 'Variable declarada a nivel de módulo
Sub HacerAlgo Dim aint Como Integer 'Variable declarada en el nivel sub ... 'Este código es local en sub End Sub Función HacerOtraCosa ( ) Como Integer Dim aint Como Integer 'Variable declarada en el nivel funcional ... 'Este código es local en función End Función "código de nivel de módulo aint = 5 HacerAlgo aint HacerOtraCosa = ( )
Variables locales
Si se define una variable a nivel del módulo (y no utilizando compartido ), la variable se dice que tiene alcance local nivel de módulo. Es visible para el código de nivel de módulo, pero no a cualquier subrutina o función dentro del módulo. En el ejemplo anterior, la variable de módulo aint sólo es visible para el código de nivel de módulo. Las variables definidas dentro de una subrutina o función son locales a la subrutina o función y no son visibles en el código de nivel de módulo o de cualquier otra subrutina o función.
Las variables definidas dentro de las estructuras de control
Las variables que se definen dentro de Si, For-Next, While-Wend y construcciones Do-Loop son locales en el código de control de estructura de bloque. Es decir, que no son visibles fuera de los límites del inicio y fin del bloque de control, al igual que una variable declarada dentro de una subrutina o función.
Variables compartidas
En el ejemplo, si desea aint a ser visible dentro de la subrutina o función, que tendría que declarar la variable como compartido y luego no declarar una variable con el mismo nombre dentro de un bloque de subrutina, función o de control. compartidas variables son visibles para los código de nivel de módulo, subrutina o función de código de nivel y dentro de los bloques de la estructura de control.
Los conflictos de ámbito
En el fragmento de código anterior, si aint fueron declarados como compartido , y cada subrutina y función declarada aint , habría un conflicto de alcance, ya que hay un nombre variable utilizada para los diferentes niveles de alcance. El compilador resuelve tomando el ámbito actual en cuenta y el mapeo de la variable dentro de dicho ámbito. Desde subrutinas y funciones tienen un menor nivel de alcance que el módulo, aint haría referencia a la variable declarada dentro de la sub o función, y no la declarada en el nivel de módulo, a pesar de que se declara como una variable compartida.
Varios módulos
Ámbito de aplicación se limita a un solo módulo, que es un solo archivo. Bas. Sin embargo, a veces es necesario ampliar el ámbito de aplicación de un módulo a otro. Usted puede utilizar la común sentencia cuando se declara una variable que debe ser compartida entre los módulos. Cada módulo debe tener la misma Common declaración para que
...