Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Há dois tipos de tipos no Visual Basic: tipos de referência e tipos de valor. Variáveis de tipos de referência armazenam referências a seus dados (objetos), enquanto variáveis de tipos de valor contêm diretamente seus dados. Com tipos de referência, duas variáveis podem fazer referência ao mesmo objeto; portanto, operações em uma variável podem afetar o objeto referenciado pela outra variável. Com tipos de valor, cada variável tem sua própria cópia dos dados e não é possível que as operações em uma variável afetem a outra (exceto no caso do modificador ByRef em parâmetros).
Tipos de valor
Um tipo de dados é um tipo de valor se ele mantém os dados dentro de sua própria alocação de memória. Os tipos de valor incluem o seguinte:
Todos os tipos de dados numéricos
Boolean
,Char
, eDate
Todas as estruturas, mesmo que seus membros sejam tipos de referência
Enumerações, já que seu tipo subjacente é sempre
SByte
, ,Short
,Integer
, ,Long
,Byte
,UShort
, ,UInteger
ouULong
Cada estrutura é um tipo de valor, mesmo que contenha membros do tipo de referência. Por esse motivo, tipos de valor como Char
e Integer
são implementados por estruturas do .NET Framework.
Você pode declarar um tipo de valor usando a palavra-chave reservada, por exemplo, Decimal
. Você também pode usar a New
palavra-chave para inicializar um tipo de valor. Isso é especialmente útil se o tipo tiver um construtor que usa parâmetros. Um exemplo disso é o Decimal(Int32, Int32, Int32, Boolean, Byte) construtor, que cria um novo Decimal
valor a partir das partes fornecidas.
Tipos de referência
Um tipo de referência armazena uma referência a seus dados. Os tipos de referência incluem o seguinte:
String
Todas as matrizes, mesmo que seus elementos sejam tipos de valor
Tipos de classe, como Form
Delegados
Uma classe é um tipo de referência. Observe que cada matriz é um tipo de referência, mesmo que seus membros sejam tipos de valor.
Como cada tipo de referência representa uma classe .NET Framework subjacente, você deve usar a palavra-chave Novo Operador ao inicializá-la. A instrução a seguir inicializa uma matriz.
Dim totals() As Single = New Single(8) {}
Elementos que não são tipos
Os seguintes elementos de programação não se qualificam como tipos, pois você não pode especificar nenhum deles como um tipo de dados para um elemento declarado:
Namespaces
Módulos
Eventos
Propriedades e procedimentos
Variáveis, constantes e campos
Trabalhando com o tipo de dados de objeto
Você pode atribuir um tipo de referência ou um tipo de valor a uma variável do Object
tipo de dados. Uma Object
variável sempre contém uma referência aos dados, nunca os dados em si. No entanto, se você atribuir um tipo de valor a uma Object
variável, ele se comportará como se ele tivesse seus próprios dados. Para obter mais informações, consulte o Tipo de Dados do Objeto.
Você pode descobrir se uma Object
variável está agindo como um tipo de referência ou um tipo de valor passando-a para o IsReference método na Information classe do Microsoft.VisualBasic namespace.
Information.IsReference retornará True
se o conteúdo da Object
variável representar um tipo de referência.