Cap1

Solo disponible en BuenasTareas
  • Páginas : 7 (1741 palabras )
  • Descarga(s) : 0
  • Publicado : 1 de febrero de 2011
Leer documento completo
Vista previa del texto
CARACTERISTICAS DEL LENGUAJE C#

TIPOS DE DATOS DE .NET: Siempre utilizaremos el mismo tipo interno de .NET, si bien cada lenguaje puede usar un nombre (o alias) para referirse a ellos, aunque lo importante es que siempre serán los mismos datos, independientemente de cómo se llame en cada lenguaje

TIPOS PRIMITIVOS: • system.Boolean bool • System.Byte byte • System.Int16 short • System.Int32int • System.Int64 long • System.Single float • System.Double double • System.Decimal decimal • System.Char char • System.String string • System.Object object • System.DateTime N.A. (DateTime) • System.SByte sbyte • System.UInt16 ushort • System.UInt32 uint • System.UInt64 ulong El único tipo de datos que no tiene un "alias" en C# es tipo DateTime las cadenas en .NET son inmutables, es decir, unavez que se han creado no se pueden modificar y en caso de que queramos cambiar el contenido, .NET se encarga de desechar la anterior y crear una nueva cadena los últimos datos no forman parte de la Common Language Specification (CLS),

SUFIJOS O CARACTERES Y SÍMBOLOS IDENTIFICADORES PARA LOS TIPOS: el propio compilador de C# hace lo que se conoce como "promoción de tipos", esto significa que siestamos asignando un valor a una variable de tipo entero, el compilador comprobará que tipo es el más adecuado, usando este orden: int, uint, long, ulong. si la constante contiene el separador de decimales, el compilador de C# asumirá que estamos trabajando con valores de coma flotante, pero siempre asumirá que el valor es de tipo double Estos errores los evitaremos de dos formas: La primera esusando un sufijo en la constante La segunda

PROMOCIONES NUMÉRICAS IMPLÍCITAS (AUTOMÁTICAS): La convertir un valor de un tipo pequeño en otro de mayor capacidad, las realizará solamente en los tipos de datos que no produzcan pérdida de información.

Este comportamiento lo podemos cambiar de forma que si hacemos ese tipo de conversión, sólo se almacene en el tipo de menor capacidad el valor quepueda soportar, desechando el resto, pero debido a que esto puede producir pérdida de información, hay que hacerlo de forma explícita, indicándolo con la instrucción unchecked. Caso de q en la conversión intervengan variables de tipos enteros (int, short, byte, long, etc.), no se producirá ningún error de compilación ni en tiempo de ejecución para cambiarlo, debemos usar la instrucción checked obien usar la opción /checked+ del compilador

CONVERSIONES NUMÉRICAS EXPLÍCITAS: Hay ocasiones en las que el compilador considera que no se pueden hacer ciertas conversiones o asignaciones entre variables o valores literales de distintos tipos de datos. Pero si nosotros sabemos que es posible hacerlas, podemos obligar al compilador a que las acepte Cuando convertimos un literal de tipo entero demayor capacidad en uno que tiene menos, el compilador producirá un error, porque "sabe" que el valor grande no "cabe" en el pequeño.

FUNCIONES DE CONVERSIÓN En C# se utiliza la expresión inglesa cast que nos indica que se realizara una conversión

TIPOS POR VALOR Y TIPOS POR REFERENCIA: Los tipos por valor son tipos de datos cuyo valor se almacena en la pila o en la memoria "cercana", alvalor contenido se almacena directamente en la memoria reservada para ese tipo y cualquier cambio que hagamos lo haremos directamente sobre dicho valorlos tipos por referencia se almacenan en el "monto" (heap) o memoria "lejana", los tipos de referencia almacenan es una referencia (o puntero) Si hacemos copias de tipos por referencia, realmente lo que copiamos es la referencia propiamente dicha, perono el contenido.

INFERENCIA DE TIPOS: Para declarar una variable a la que queremos que el compilador infiera el tipo de dato, utilizaremos la palabra reservada var.

VARIABLES Y CONSTANTES: Las constantes son valores que nunca cambian y pueden ser de dos tipos: Constantes literales, por ejemplo, cuando usamos 12345, estamos usando un valor constante, ya que ese número siempre tendrá el...
tracking img