Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
cap:cs:tipos [2017/05/04 13:58]
user
cap:cs:tipos [2018/02/20 09:18] (actual)
Línea 26: Línea 26:
 Son aquellos tipos de datos que están compuestos por 1 o mas datos tanto primitivos como compuestos, es decir, las clases que solemos crear para nuestras necesidades. Son aquellos tipos de datos que están compuestos por 1 o mas datos tanto primitivos como compuestos, es decir, las clases que solemos crear para nuestras necesidades.
  
 +<file csharp tipo_compuesto.cs>​
 +public class Persona {
 +   ​public int PersonaID { get; set; }
 +   ​public string Nombre { get; set; }
 +   ​public int Edad { get; set; }
 +   ​public decimal Altura { get; set; }
 +}
 +</​file>​
 ===== Variables ===== ===== Variables =====
 Son declaraciones de tipos de datos donde se valor puede cambiar. Son declaraciones de tipos de datos donde se valor puede cambiar.
 +
 +<file csharp variable.cs>​
 +//​declaracion inicial con valor de 10
 +int edad = 10;
 +
 +//​asignacion de valor a 22
 +edad = 22;
 +
 +//​incremento de valor en 1
 +edad++;
 +</​file>​
  
 ===== Constantes ===== ===== Constantes =====
 Son declaraciones de tipos de datos donde su valor se define desde la declaración,​ y este no cambia. Son declaraciones de tipos de datos donde su valor se define desde la declaración,​ y este no cambia.
  
 +<file csharp constantes.cs>​
 +public class Constantes {
 +   ​public const decimal PI = 3.141592;
 +}
 +
 +/**** En otro fragmento de codigo ****/
 +
 +//Error por querer cambiar el valor
 +Constantes.PI = 3.1416;
 +</​file>​
 ===== Enumeradores ===== ===== Enumeradores =====
 Son agrupadores de constantes con nombres de firmas las cuales son identificables a simple vista. Son agrupadores de constantes con nombres de firmas las cuales son identificables a simple vista.
 +
 +<file csharp enumeradores.cs>​
 +public enum Rol 
 +{
 +   ​Usuario = 1,
 +   ​Autorizador = 2,
 +   ​Administrador = 3
 +}
 +
 +/**** En otro fragmento de codigo ****/
 +
 +var rol = Rol.Autorizador;​
 +</​file>​
 +==== Flag ====
 +Son enumeradores con un atributo especial que las hace poder ser utilizadas en operaciones BitWise.
 +
 +<file csharp enumeradores_flag.cs>​
 +[Flags]
 +public enum Permisos
 +{
 +   ​Lectura = 1,
 +   ​Escritura = 2,
 +   ​Asignacion = 4,
 +   ​Compartir = 8,
 +   ​Generar_Reporte = 16,
 +   ​Autorizar = 32
 +}
 +
 +/**** Clase ****/
 +
 +public class Empleado {
 +   ​public Permisos Permisos { get; set; }
 +}
 +
 +
 +/**** En otro fragmento de codigo ****/
 +
 +var empleado = new Empleado() { Permisos = Permisos.Leer | Permisos.Escribir };
 +
 +if (empleado == Permisos.Autorizar) {
 +   ​Console.WriteLine("​El empleado puede autorizar"​);​
 +} else {
 +   ​Console.WriteLine("​El empleado no puede autorizar"​);​
 +}
 +
 +</​file>​
 +
 +