Compartilhar via


Função UBound (Visual Basic)

Retorna a maior subscrição disponível para a dimensão indicada de uma matriz.

Public Function UBound( _
   ByVal Array As System.Array, _ 
   Optional ByVal Rank As Integer = 1 _
) As Integer

Parâmetros

  • Array
    Obrigatório.Matriz de qualquer tipo de dados.A matriz em que você deseja encontrar o maior subscrito possível de uma dimensão.

  • Rank
    Opcional.Integer.A dimensão para o qual o mais alto possível subscrito será retornado.Use 1 para a primeira dimensão, 2 para a segunda e assim por diante.Se Rank for omitido, 1 será adotado.

Valor de retorno

Integer.O valor mais alto pode conter a subscrição para a dimensão especificada.If Array tem somente um elemento UBound Retorna 0. If Array não tem nenhum elemento, por exemplo, se for uma cadeia de comprimento zero UBound Retorna -1.

Exceções

Tipo de exceção

Número de erro

Condição

ArgumentNullException

9

Array é Nothing

RankException

9

Rank é menor que 1 ou Rank é maior do que a ordem de Array.

Ver a coluna " número de erro " se você estiver atualizando aplicativos Visual Basic 6.0 que usam manipulação de erros não estruturada.(Você pode comparar o número do erro com a Propriedade do Número (Erro de objeto).) Entretanto, quando for possivel, você pode considerar substituir tal controle de erro por Visão Geral sobre a Manipulação Estruturada de Exceções para o Visual Basic.

Comentários

Como a matriz subscritos inicia em 0, o comprimento de uma dimensão é maior por um que a maior subscrição disponível para essa dimensão.

Para uma matriz com as seguintes dimensões, UBound retorna os valores na tabela a seguir:

Dim a(100, 5, 4) As Byte

Chamada para UBound

Valor de Retorno

UBound(a, 1)

100

UBound(a, 2)

5

UBound(a, 3)

4

Você pode usar UBound para determinar o total número de elementos em uma matriz, mas necessário ajustar o valor retornado à conta o fato de que os subscritos começam com 0. O exemplo a seguir calcula o dimensionar total do array a no exemplo anterior:

Dim total As Integer
total = (UBound(A, 1) + 1) * (UBound(A, 2) + 1) * (UBound(A, 3) + 1)

O valor calculado para total é 3030, que é 101 * 6 * 5.

Exemplo

O exemplo a seguir usa a função UBound para determinar a maior subscrição disponível para a dimensão indicada de uma matriz.

Dim highest, bigArray(10, 15, 20), littleArray(6) As Integer
highest = UBound(bigArray, 1)
highest = UBound(bigArray, 3)
highest = UBound(littleArray)
' The three calls to UBound return 10, 20, and 6 respectively.

Requisitos

Namespace: Microsoft.VisualBasic

Módulo: Informações

Assembly: Visual Basic Runtime Library (em Microsoft.VisualBasic.dll)

Consulte também

Referência

Função LBound (Visual Basic)

Instrução Dim (Visual Basic)

ReDim demonstrativo (Visual Basic)

ArgumentException

RankException