O limite inferior de matrizes é sempre zero no Visual Basic .NET

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 311333
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Sumário
No Microsoft Visual Basic. NET, o limite inferior de cada dimensão de matriz é zero (0). Você não pode declarar o limite inferior de matrizes com qualquer número inteiro. Além disso, a declaração Option Base não tem suporte no Visual Basic. NET.
Mais Informações
No Microsoft Visual Basic 6.0, você pode definir matrizes com os limites inferiores e limites superiores definidos como qualquer inteiro. Você também pode usar a declaração ReDim para retribuir uma variante como uma matriz.

No Visual Basic. NET, o limite inferior de matrizes é definido como zero para habilitar a interoperabilidade com outras linguagens. Além disso, não é possível usar ReDim a menos que a variável anteriormente foi declarada com Dim como matriz . Option Base {0|1} foi removido no Visual Basic .NET porque ele não é mais necessário. Embora isso restrinja como definir matrizes, ela permite que você passar matrizes entre o Visual Basic .NET e qualquer outra linguagem no Microsoft .NET Framework.

As instruções a seguir são válidas em Visual Basic 6.0 mas não no Visual Basic .NET:
Dim myArray(1 To 10) As Integer   Dim myVariantArrayReDim myVariantArray(10)Dim myArray() as IntegerReDim myArray(10) as Integer				
as seguintes declarações de matriz são válidas no Visual Basic. NET:
Dim myNetArray(5) As Integer ReDim myNetArray(10)'You can only use ReDim with an array that was previously declared.'You cannot change data type with ReDim; the AS clause results in compile error.Dim myNetArray() As IntegerReDim myNetArray(10)				
ao atualizar um projeto Visual Basic 6.0 para Visual Basic. NET, qualquer instrução Option Base são removidas do código. Se uma matriz é zero vinculado, ele não é alterado. No entanto, se uma matriz é diferente de zero vinculado, o limite inferior é removido, e um aviso será inserido no código.

Por exemplo, o seguinte código Visual Basic 6.0:
Dim myArray(1 To 10) As Integer				
aparece da seguinte maneira após a atualização para o Visual Basic .NET:
'UPGRADE_WARNING: Lower Bound of array myArray was changed from 1 to 0Dim myArray (10) As Integer				
em muitos casos, o código atualizado funciona como fazia antes. No entanto, se a lógica do aplicativo depende o limite inferior diferente de zero, você deve modificar o aplicativo. Todas as declarações de matriz (instruções Dim , ReDim e LBound ) são marcadas com avisos para ajudar você a revisar as alterações.

Antes de atualizar um aplicativo Visual Basic 6.0 para Visual Basic. NET, tenha as seguintes diretrizes em mente:
  • Modificar o aplicativo Visual Basic 6.0 para usar matrizes zero acoplados.
  • Evite usar ReDim como uma declaração de matriz.
  • Evite o uso de Option Base 1 .

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 311333 - Última Revisão: 12/07/2015 08:05:37 - Revisão: 1.2

Microsoft Visual Basic .NET 2002 Standard Edition

  • kbnosurvey kbarchive kbmt kbvs2005swept kbvs2005doesnotapply kbmigrate kbinfo KB311333 KbMtpt
Comentários