View
998
Download
1
Category
Preview:
Citation preview
Estructuras en C#, con ejemplos Usted desea utilizar las estructuras para mejorar el rendimiento de su aplicación y la claridad
del código. Las estructuras tienen ventajas sobre las clases en algunas situaciones, pero
también desventajas, sobre todo en el lenguaje de programación C#. Aquí podemos ver varios
ejemplos de estructuras y puntos de referencia, utilizando el lenguaje C#.
Uso de las estructuras En primer lugar, aquí podemos ver un programa sencillo de ejemplo que utiliza un tipo de
estructura en el lenguaje de programación C#. En este ejemplo se utiliza un proyecto de
consola (Console Application) para hacer la llamada a una simple estructura, que almacena
tres valores: dos números y un booleano.
/// <summary>
/// Las estructuras (Struct) son tipos por valor
/// Las clases (Class) son tipos por referencia
/// </summary>
class Program
{
static void Main(string[] args)
{
Simple s;
s.Posicion = 1;
s.Existe = false;
s.UltimoValor = 5.5;
//Fijese muy bien que es lo que sucede con los
atributos de la estructura
//Antes de llamar al método CambiaValoresStruct
CambiaValoresStruct(s);
Console.ReadKey();
}
static void CambiaValoresStruct (Simple s)
{
s.Posicion = 10;
s.Existe = true;
s.UltimoValor = 7.8;
}
}
/// <summary>
/// Definicion de la estructura
/// </summary>
struct Simple
{
public int Posicion;
public bool Existe;
public double UltimoValor;
};
Entender las estructuras
Las estructuras son tipos personalizados por valor que almacenan los valores de cada campo
juntos. No almacenan los datos de referencia (un puntero a la memoria), tales como la matriz
de caracteres en una cadena. ¿Qué dice MSDN que son las estructuras? "no requieren de un
montón de asignaciones." Se dice que las variables de tipo de estructura "directamente
contienen los datos de la estructura, mientras que una variable de un tipo de clase contiene
una referencia a los datos."
http://msdn.microsoft.com/en-us/library/aa288471(VS.71).aspx
En estricto rigor, estamos diciendo que las estructuras (structs) evitan la sobrecarga de
objetos en C#. Se pueden combinar varios campos, reduciendo la presión de la memoria y
mejora el rendimiento.
La recomendación es: usar las estructuras, cuando el diseño de la solución de software esté
completo y usted realizando una evaluación comparativa logra demostrar que las estructuras
son más beneficiosas que las clases.
Para mayores detalles, se recomienda visitar el capítulo 1 del libro .NET Framework 2.0
Application Development Foundation que se encuentra en el aula virtual del curso.
Juan José González Faúndez
Profesor DUOC UC
Programación II .NET (LDP3105)
j.gonzalez3@profesor.duoc.cl
Recommended