Alterações de Valor Durante Conversões
Uma conversão para um tipo de valor armazena uma cópia do valor-fonte no destino da conversão.Entretanto, esta cópia não é a imagem exata do valor-fonte.O tipo de dados de destino armazena valores de modo diferente, e mesmo que o valor que está sendo representado possa mudar, dependendo do tipo de conversão que está sendo realizada.
Alterações Durante Conversões de Alargamento e Estreitamento
Conversões de estreitamento alteram a cópia de destino do valor-fonte, com potencial perda de informações.Por exemplo, um valor fracionário é arredondado quando convertido para um tipo inteiro, e um tipo numérico sendo convertido para Boolean é reduzido para True ou False.
Conversões de alargamento preservam o valor-fonte, mas podem alterar sua representação.Isso acontece se você converter de um tipo integral para Decimal, ou de Char para String.
O valor-fonte original não é alterado como um resultado de uma conversão.
Alterações Durante Conversões de Tipo de Referência
Uma conversão de um tipo de referência copia apenas o ponteiro ao valor.O próprio valor não é nem copiado nem alterado de nenhum modo.A única coisa que pode mudar é o tipo de dados da variável mantendo o ponteiro.No exemplo a seguir, o tipo de dados é convertido da classe derivada para sua classe base, mas o objeto ao qual ambas a variáveis apontam está inalterado.
' 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
Consulte também
Tarefas
Como: Converter um objeto em outro tipo no Visual Basic
Conceitos
Conversões Ampliadoras e Redutoras
Conversões explícita e implícita
Conversões entre sequências e outros tipos
Programação Sem-Tipos no Visual Basic
Referência
Resumo de tipo de dados (Visual Basic)