Conversión de tipos
En ciencias de la computación la conversión de tipos (type casting en inglés) se refiere a la transformación de un tipo de dato en otro. Esto se hace para tomar las ventajas que pueda ofrecer el tipo a que se va a convertir. Por ejemplo, los valores de un conjunto más limitado, como números enteros, se pueden almacenar en un formato más compacto y más tarde convertidos a un formato diferente que permita las operaciones que anteriormente no eran posibles, tales como la división con decimales.
Tipos de conversión
Hay dos tipos de conversión, la implícita y la explícita:
En la implícita se convierte un tipo de dato de menor rango a un supertipo (tipo de dato de mayor rango); este tipo de conversión lo realiza el compilador, ya que no hay pérdida de datos si, por ejemplo, se pasa un int (tipo entero) a long.
En la conversión explícita, el compilador no es capaz de realizarla por sí solo y por ello debe definirse explícitamente en el programa.
Existen varios tipos de conversión explícita:
- Controlada: antes de realizar la conversión se controla en tiempo de ejecución si el tipo de destino puede tener el valor de origen, y si no se produce un error.
- No controlada: no se realiza ningún control, si el tipo de dato destino no puede contener al de origen el resultado es indefinido (generalmente se produce un desbordamiento de búfer y en algunos casos como en java el cambio se produce sin mayores consecuencias).
- Patrón de bits: La representación de bits en bruto de la fuente es una copia literal, y se reinterpreta de acuerdo con el tipo de destino. Esto también puede lograrse a través de aliasing.
Enlaces externos
- Conversión de tipos Microsoft.
Datos: Q1333515