Compartilhar via


Função CType (Visual Basic)

Retorna o resultado da conversão explícita de uma expressão a especificado tipo de dados, objeto, estrutura, classeou interface.

CType(expression, typename)

Parts

  • expression
    Any valid expression. Se o valor de expression está fora do intervalo permitido por typename, Visual Basic lança uma exceção.

  • typename
    Qualquer expressão que é legal dentro de um As cláusula em um Dim demonstrativo, ou seja, o nome de qualquer tipo de dados, objeto, da estrutura, classeou interface.

Comentários

CTypeé compilado embutido, que significa que o código de conversão é parte do código que avalia a expressão. Em alguns casos, não há nenhuma chamada para um procedimento para realizar a conversão, o que torna mais rápido de execução.

Se nenhuma conversão definido a partir de expression para typename, por exemplo, de Integer para Date, Visual Basic exibe uma compilar-mensagem de erro de tempo.

Se uma conversão falhar em tempo de execução, ocorre a exceção apropriada. Se uma conversão de restrição falhar, um OverflowException é o resultado mais comum. Se a conversão não está definida, uma InvalidCastException ocorre. Isso pode acontecer, por exemplo, se expression é do tipo Object e o tempo de execução-tipo não tem nenhuma conversão em typename.

Se o tipo de dados de expression ou typename é uma classe ou estrutura foram definidos, você pode definir CType nessa classe ou estrutura , como um operadorde conversão. Isso faz com que CType atuar como um operadorsobrecarregado. Se você fizer isso, você pode controlar o comportamento de conversões para e de sua classe ou estrutura, incluindo quais exceções podem ser geradas.

Overloading

O CType operador também podem ser sobrecarregados em uma classe ou estrutura definida fora de seu código. Se o seu código converte para ou de uma classe ou estrutura, certifique-se de que você compreender o comportamento do seu CType operador. For more information, see Procedimentos de operador (Visual Basic).

Conversão de objetos dinâmicos

Se você estiver trabalhando com objetos dinâmicos, onde as conversões de tipo são executadas pelo usuário-definiu conversões dinâmicas que usam o TryConvert ou BindConvert métodos, Use o CTypeDynamic método para converter o objetodinâmico.

Exemplo

O exemplo a seguir usa a CType função para converter uma expressão para o tipo de dadosespecificado.

Dim testNumber As Long = 1000
' The following line of code sets testNewType to 1000.0.
Dim testNewType As Single = CType(testNumber, Single)

Consulte também

Tarefas

Como: Definir um operador de conversão (Visual Basic)

Referência

Funções de conversão de tipo (Visual Basic)

Funções de conversão (Visual Basic)

OverflowException

InvalidCastException

Instrução Operator