Variables, constantes y enumeraciones

El nombre de las variables:

  • Empiezan por una letra.
  • Pueden estar compuestas por caracteres alfanumércios o el carácter subrayado «_».
  • Se distinguen mayúsculas de minúsculas
  • No se pueden usar las palabras reservadas del lenguaje (if,switch, void, …) a no se que se utilice el caracter arroba «@» precediendo al la variable. Por ejemplo.: @if sí podría ser una variable.

Tipos numéricos enteros:

  • Con signo
    • sbyte (8 bits)
    • short (16 bits)
    • int (32 bits)
    • long (64 bits)
  • Sin signo
    • byte (8 bits)
    • ushort (16 bits)
    • uint (32 bits)
    • ulong (64 bits)

Tipos numéricos decimales (todos son con signo).

  • float (4 bytes = 32 bits)
  • double (8 bytes = 64 bits)
  • decimal (16 bytes = 128 bits)

Tipos de carácter:

  • char (2 bytes = 16 bits): código unicode donde se pueden representar hasta 256 caracteres, de los cuales los primeros 128 son los mismos que el juego de caracteres ASCII.
  • String: es el objeto que utilizamos para representar cadenas.

Secuencias de escape:

\’ = comillas simples \a = alerta \r = retorno de carro
\” = comillas dobles \b = backspace \t = tabulación horizontal
\\ = barra invertida \f = salto de página \v = tabulación vertical
\0 = carácter nulo \n= salto de línea

Otra alternativa a la utilización de algunas secuencias de escape la encontramos en el operador «@«, que vendría a ser algo parecido a instrucción <pre> de html.

Por ejemplo:

Tipo Boolean:

  • true
  • false

Tipo Object:

En una variable tipo Object podemos almacenar cualquier cosa. en realidad la variable almacena la dirección de memoria donde se encuentra el valor de la variable.

Tipo dymanic:

A veces puede ocurrir que sólo podemos conocer el tipo de una variable en tiempo de ejecución y no cuando estamos programando o diseñando la aplicación, para este tipo de casos tenemos la palabra reservada dynamic para utilizar junto con la variable afectada y la cual no sabemos de que tipo va a ser.

A esta función «operación» la podríamos invocar por ejemplo:

Las dos primeras llamadas se ejecutarían sin problemas, la primera sumando y la segunda concatenando, la tercera saltaría una excepción ya que la operación «+» no es aplicable al tipo de dato Objeto directamente.

Los tipos Nullables.

para asignar a una variable el valor Null (nulo) sólo tenemos que utilizar el carácter «?» después del tipo de variable. Por ejemplo podemos hacer la recuperación de ciertos datos de una base de datos y cuando recuperamos esos datos nos damos cuenta que no tienen ningún valor, por ejemplo campos booleanos, enteros. Para estos casos puede ser interesante no asignar ningún valor a la variable, o mejor dicho asignar el valor Null a dicha variable. Luego para saber si una variable tiene valor podemos utilizar la función Hasvalue. Si intentáramos utilizar el valor de una variable que no tiene valor (null) nos saltaría una excepción, por lo que a las variables que permitimos tener valor nulo siempre deremos tener la precaución de comprobar antes si tienen algún valor asignado.

Uso de las variables booleanas con los operadores lógicos.

B1 B2 B1 & B2 B1 | B2
null null null null
null true null true
null false false null
true null null true
true true true true
true false false true
false null false null
false true false true
false false false false

Declaración de variables

Sintaxis general de declaración de una variable (los parámetros entre corchetes son opcionales).

En caso de que se omita el valor inicial, la variable será inicializada a cero si corresponde a un tipo numérico; a una cadena de carácter vacío si es del tipo String; al valor null si es del tipo Object, y a false si es del tipo bool.

Estas reglas no se aplican a las variables declaradas en el interior de una función que deben ser inicializadas antes de poder utilizarse, el siguiente ejemplo daría un error por no haberle asignado ningún valor a la variable.

Inferencia de tipo

El compilador puede determinar el tipo que se ha de utilizar para una variable local. La inferencia sólo sirve para variables declaradas en una función (variables locales).

Las constantes

Valores numéricos o cadenas que no serán modificados durante el funcionamiento de la aplicación.

Podemos también calcular el valor de una constante a partir de otra constante.

Las enumeraciones