Cambios de valores durante las conversiones
Actualización: noviembre 2007
Una conversión de un tipo de valor almacena una copia del valor de origen en el destino de la conversión. Sin embargo, esta copia no es una imagen exacta del valor de origen. El tipo de datos de destino almacena valores de forma distinta, e incluso puede modificarse el valor que se está representando, en función del tipo de conversión que se esté realizando.
Cambios durante las conversiones de ampliación y de restricción
Las conversiones de restricción cambian la copia de destino del valor de origen con una pérdida potencial de información. Por ejemplo, un valor fraccionario se redondea al convertirlo en un tipo integral y un tipo numérico que se está convirtiendo a Boolean se reduce a True o False.
Las conversiones de ampliación conservan el valor de origen pero pueden cambiar su representación. Esto sucede si se convierte un tipo integral en Decimal o un tipo Char en String.
El valor de origen inicial no cambia como resultado de una conversión.
Cambios durante las conversiones de tipos de referencia
Una conversión de un tipo de referencia sólo copia el puntero al valor. El valor en sí mismo no se copia ni se cambia en modo alguno. Lo único que puede cambiar es el tipo de datos de la variable que contiene el puntero. En el ejemplo siguiente, el tipo de datos cambia de la clase derivada a su clase base, pero el objeto al que apuntan ahora ambas variables no se modifica.
' Assume class cSquare inherits from class cShape.
Dim shape As cShape
Dim square As cSquare = New cSquare
' The following statement performs a widening
' conversion from a derived class to its base class.
shape = square
Vea también
Tareas
Cómo: Convertir un objeto en otro tipo en Visual Basic
Conceptos
Conversiones de ampliación y de restricción
Conversiones implícitas y explícitas
Conversiones entre cadenas y otros tipos
Programación sin tipos en Visual Basic
Referencia
Resumen de tipos de datos (Visual Basic)
Funciones de conversión de tipos