Tipos de Datos
Tipos de Datos
Tipos de Datos
Tipos de Datos
Un tipo de dato determina la naturaleza del dominio de valores que puede tomar una variable, las
operaciones en que puede participar y el espacio de memoria que necesita. La tabla siguiente muestra los
tipos de datos, incluyendo el tamaño de almacenamiento y el intervalo.
Nota: Las matrices de cualquier tipo de datos requieren 20 bytes de memoria más cuatro bytes para
cada dimensión de matriz, más el número de bytes que ocupan los propios datos. Por ejemplo, los datos
de una matriz unidimensional que constan de cuatro elementos de datos tipo Integer de dos bytes cada
uno, ocupan ocho bytes. Los ocho bytes que requieren los datos más los 24 bytes necesarios para la
matriz suman un requisito total de memoria de 32 bytes para dicha matriz. Un tipo Variant que contiene
una matriz requiere 12 bytes más que la matriz por sí sola.
Funciones de
Conversión Convierten una expresión en
Cbool Boolean
Cbyte Byte
Ccur Currency
Cdate Date
CDbl Double
Cint Integer
CLng Long
CSng Single
CStr String
Cvar Variant
CVErr Error
Nota: Los valores que se pasan a una función de conversión deben ser válidos para el tipo de dato de
destino o se producirá un error. Por ejemplo, si intenta convertir un tipo Long en un Integer, el tipo de
Long debe de estar en el intervalo válido del tipo de dato Integer.
Variables
Las variables se utilizan para almacenar valores temporalmente durante la ejecución de una aplicación.
Las variables tienen un nombre (la palabra que utiliza para referirse al valor que contiene la variable) y un
tipo de dato (que determina la clase de dato que la variable puede almacenar).
Observe que el signo igual del ejemplo es un operador de asignación, no un operador de igualdad; el valor
10 se asigna a la variable ManzanasVendidas.
Declaración de Variables
Declarar una variable es decirle al programa algo de antemano. Se declara una variable mediante la
instrucción Dim, proporcionando un nombre a la variable, según la siguiente sintaxis:
Las variables que se declaran en un procedimiento mediante la sentencia Dim sólo existen mientras se
ejecuta el procedimiento. Cuando termina el procedimiento, desaparece el valor de la variable. Además,
el valor de una variable de un procedimiento es local a dicho procedimiento; es decir, no puede tener
acceso a una variable de un procedimiento desde otro procedimiento. Estas características le permiten
utilizar los mismos nombres de variables en distintos procedimientos sin preocuparse por posibles
conflictos o modificaciones accidentales.
La cláusula opcional As tipo de la sentencia Dim le permite definir el tipo de dato o de objeto de la
variable que va a declarar. Los tipos de datos definen el tipo de información que almacena la variable.
Algunos ejemplos de tipos de datos son String, Integer y Currency. Las variables también pueden
contener objetos de Visual Basic u otras aplicaciones. Algunos ejemplos de tipos de objeto de Visual
Basic, o clases, son Object, Form1 y TextBox.
Declaración Implícita
No tiene por qué declarar una variable antes de utilizarla. Por ejemplo, podría escribir una función donde
no hiciera falta declarar TempVal antes de utilizarla:
Visual Basic crea automáticamente una variable con ese nombre, que puede utilizar como si la hubiera
declarado explícitamente. Aunque es cómodo, puede provocar errores sutiles en el código si se equivoca
de nombre de variable. Por ejemplo, suponga que ha escrito esta función:
A primera vista, parece igual. Pero como se ha escrito erróneamente la variable TempVal en la tercera
línea, la función devolverá siempre cero. Cuando Visual Basic encuentra un nombre nuevo, no puede
averiguar si realmente desea declarar una variable nueva o simplemente ha escrito de forma errónea una
variable existente, por lo que crea una variable nueva con ese nombre.
Declaración Explícita
Para evitar problemas al equivocarse de nombre en las variables, puede configurar Visual Basic para que
le avise siempre que encuentre un nombre que no se haya declarado explícitamente como una variable.
Incluya esta sentencia en la sección Declaraciones Generales del módulo de clase, de formulario o
estándar:
Option Explicit
- o bien -
En el menú Herramientas, elija Opciones, haga clic en la ficha Editor y active la opción
Declaración de variables requerida. Esto inserta automáticamente la sentencia Option Explicit en
los módulos nuevos, pero no en los ya creados, por lo que tendrá que agregar manualmente Option
Explicit a los módulos existentes en el proyecto.
Si hubiera tenido efecto dicha instrucción en el módulo de formulario o módulo estándar que contiene la
función Raíz, Visual Basic habría reconocido TempVal y TemVal como variables no declaradas y habría
generado errores para ambas. Debería, por tanto, declara explícitamente TempVal:
procedimiento.
Nivel de módulo Las variables son privadas Las variables están
al módulo donde se disponibles para todos
declaran. los módulos.
Los valores de variables locales declaradas con Static existen mientras se ejecuta la aplicación, mientras
que las variables declaradas con Dim sólo existen mientras se ejecuta el procedimiento.
Ejemplo:
El Siguiente ejemplo muestra las diferencias entre la palabra clave Dim y Static
Al nivel de módulo, no hay diferencia entre Private y Dim, pero es preferible usar Private porque
contrasta con Public y hace que el código sea más fácil de comprender.
Constantes
A menudo verá que el código contiene valores constantes que reaparecen una y otra vez. O puede que el
código dependa de ciertos números que resulten difíciles de recordar (números que, por sí mismos, no
tienen un significado obvio).
En estos casos, puede mejorar mucho la legibilidad del código y facilitar su mantenimiento si utiliza
constantes. Una constante es un nombre significativo que sustituye a un número o una cadena que no
varía. Aunque una constante recuerda ligeramente a una variable, no puede modificar una constante o
asignarle un valor nuevo como ocurre con una variable. Hay dos orígenes para las constantes:
El argumento nombre_constante es un nombre simbólico válido (las reglas son las mismas que para crear
nombres de variable) y expresión está compuesta por constantes y operadores de cadena o numéricos; sin
embargo, no puede utilizar llamadas a funciones en expresión. Una instrucción Const puede representar
una cantidad matemática o de fecha y hora:
Puede colocar más de una declaración de constante en una única línea si las separa con comas:
A menudo, la expresión del lado derecho del signo igual ( = ) es un número o cadena literal, pero también
puede ser una expresión que dé como resultado un número o una cadena (aunque la expresión no puede
contener llamadas a funciones). Puede incluso definir constantes en términos de constantes previamente
definidas:
Para crear una constante que sólo exista en un procedimiento, declárela dentro del procedimiento.
Para crear una constante disponible para todos los procedimientos de un módulo, pero no para el
código que está fuera del módulo, declárela en la sección Declaraciones Generales del módulo.
Para crear una constante disponible en toda la aplicación, declare la constante en la sección
Declaraciones Generales de un módulo estándar y coloque delante de Const la palabra clave
Public. No se pueden declarar las constantes públicas en un módulo de clase o de formulario.
Evitar referencias circulares
Como es posible definir constantes en términos de otras constantes, deberá tener cuidado para no
establecer un ciclo o referencia circular entre dos o más constantes. Se produce un ciclo cuando se tienen
dos o más constantes públicas, cada una de las cuales está definida en función de la otra. Por ejemplo:
'En el Módulo 1:
Public Const conA = conB * 2 ' Disponible en toda la aplicación
'En el Módulo 2:
Public Const conB = conA / 2 ' Disponible en toda la aplicación
Si se produce un ciclo, Visual Basic generará un error cuando intente ejecutar la aplicación. No puede
ejecutar el código hasta que resuelva la referencia circular. Para evitar la creación de un ciclo, restrinja
todas las constantes públicas a un único módulo o, al menos, al menor número posible de módulos.
Subprocedimiento o
Función
Nivel de módulo Private en la sección Todos los procedimientos
Declaraciones Generales del módulo de formulario
de un módulo de o de código
formulario o de código
(.frm, .bas)
Global Public en la sección En toda la aplicación
Declaraciones Generales
de un módulo de código
(.bas)
En una aplicación de Visual Basic, las variables globales se deben usar sólo cuando no exista ninguna
otra forma cómoda de compartir datos entre formularios. Cuando haya que usar variables globales, es
conveniente declararlas todas en un único módulo agrupadas por funciones y dar al módulo un nombre
significativo que indique su finalidad, como Públicas.
Una práctica de codificación correcta es escribir código modular siempre que sea posible. Por ejemplo, si
la aplicación muestra un cuadro de diálogo, coloque todos los controles y el código necesario para
ejecutar la tarea del diálogo en un único formulario. Esto ayuda a tener código de la aplicación
organizado en componentes útiles y minimiza la sobrecarga en tiempo de ejecución.
A excepción de las variables globales ( que no se deberían pasar), los procedimientos y funciones deben
operar sólo sobre los objetos que se les pasan.
Una variable tiene alcance global si se declara como Public en un módulo estándar o en un módulo de
formulario. Una variable tiene alcance de nivel de módulo si se declara como Private en un módulo
estándar o en un módulo de formulario, respectivamente.
Nota: La coherencia es crucial para usar esta técnica de forma productiva; el corrector de sintaxis de
Visual Basic no interceptará las variables de nivel de módulo que comience con “p”.
Constantes
El nombre de las constantes se debe escribir en mayúsculas y minúsculas, con la letra inicial de cada
palabra en mayúsculas. Aunque las constantes estándar de Visual Basic no incluyen información de tipo
de datos y el alcance de una constante. Para los nombres de constantes, se deben seguir las mismas
normas que para las variables. Por ejemplo:
Variables
Declarar todas las variables ahorra tiempo de programación porque reduce el número de errores debidos a
nombres de variables errados (por ejemplo, aNombreUsuarioTmp frente a sNombreUsuarioTmp frente
a sNombreUsuarioTemp). En la ficha Editor del cuadro de diálogo Opciones, active la opción
Declaración de variables requerida. La instrucción Option Explicit requiere que declare todas las
variables del programa de Visual Basic.
Las variables deben llevar un prefijo para indicar su tipo de datos. Opcionalmente, y en especial para
programas largos, el prefijo se puede ampliar para indicar el alcance de la variable.
OPERADORES
Aritméticos
^ Exponenciación
* Multiplicación
/ División real
\ División entera
Mod Residuo entero (Ejm: A Mod B)
+ Suma
- Resta
Relacionales
= Igual
<> Distinto
< Menor que
<= Menor o igual
> Mayor que
>= Mayor o igual
Like Compara dos cadenas
* Cero o más caracteres (Ejm: cad Like “ma*”)
? Cualquier carácter
# Cualquier dígito (0-9)
[lista] cualquier carácter en lista
[¡lista] cualquier carácter que no esta en lista
Is Usado para comparar dos variables de referencia a objetos
Lógicos