A matriz mencionada neste artigo é a definição de matrizes no Visual Basic, que possui um certo valor de referência para a programação do ASP.
Uma matriz é uma coleção de dados ordenados. Os elementos em uma matriz podem não pertencer ao mesmo tipo de dados. Use um nome de matriz unificado e o subscrito para determinar exclusivamente os elementos na matriz. Os subscritos de uma matriz são delimitados e são divididos em limites inferiores e limites superiores. As matrizes podem ser declaradas com escura, privada, pública ou estática, e seus formatos de sintaxe são os mesmos. A seguir, é apenas o método de declarar matrizes usando DIM.
1. Definição e declaração de matrizes
A sintaxe de definição de uma matriz é a seguinte:
Nome da matriz escura ([[Limite inferior subscrito para] limite superior subscrito]) [como tipo de dados]
Por exemplo (assumindo que o limite inferior padrão da matriz no módulo atual é 0)):
① Dim a (10) como inteiro
Isso significa que o nome da matriz é A. O limite inferior deste subscrito da matriz é o valor padrão 0, o limite superior do subscrito é 10 e existem 11 elementos do tipo inteiro, de A (0), a (1) para um (10).
② Dim B (1 a 20) como inteiro
Isso significa que o nome da matriz é B. O limite inferior desta matriz é 1, o limite superior do subscrito é 20 e existem 20 elementos do tipo inteiro, de B (1) a B (20).
③dim DayArray (50)
Indica que o DayArray é uma matriz variante com 51 índices (de 0 a 50) elementos.
④dim Matrix (3, 4) como inteiro
Indica que a Matrix é uma matriz inteira bidimensional.
⑤dim myMatrix (1 a 5, 4 a 9, 3 a 5) como duplo
Indica que o MyMatrix é uma matriz dupla tridimensional que especifica explicitamente os limites superior e inferior.
⑥dim Birthday (1 a 10) como data
Indica que o aniversário é uma matriz do tipo data com índices de 1 a 10.
2. Declaração base de opções
A instrução Base de opções é usada no nível do módulo e é usada para declarar o limite inferior padrão dos subscritos da matriz.
A sintaxe da instrução BASE Option é a seguinte:
Base de opções {0 | 1}
NOTA: O limite inferior da matriz é 0 por padrão e não há necessidade de usar a instrução BASE Option. Se você usar esta instrução para especificar o limite inferior da matriz 1, deverá usar a instrução BASE da opção antes da declaração de matriz do módulo.
Perceber:
(1) As cláusulas para declarações escuras, privadas, públicas, redim e estáticas fornecem uma maneira mais flexível de controlar o subscrito de uma matriz. No entanto, se o limite inferior não for especificado explicitamente usando a cláusula do TO, você poderá definir o limite inferior padrão como 1 usando a base de opções. Os limites inferiores de uma matriz criada usando a função da matriz também são determinados pelos limites inferiores especificados pela declaração base da opção, a menos que a matriz seja qualificada pela biblioteca de tipos (como vba.array), se qualificada pelo nome da biblioteca de tipos, A matriz criada usando a função de matriz também é determinada pelo nome da função da matriz.
(2) A instrução Base de opções afeta apenas os limites inferiores da matriz localizada no módulo que contém a instrução.
Algumas notas sobre a declaração de matriz:
①O nome das regras de nomeação do nome da matriz é o mesmo que nomes de variáveis.
② O nome da matriz é embrulhado entre parênteses e suportes quadrados não podem ser usados, o que é diferente do idioma C.
Bound O limite inferior do subscrito não deve ser maior que o limite superior.
④ Você pode usar nomes variáveis ou nomes constantes (e números reais) como limite para os subscritos. Quando o limite do índice é um nome constante, o tamanho da matriz é fixo. o valor da variável durante a operação do programa. Portanto, as matrizes no VB podem ser divididas em dois tipos: matrizes estáticas e matrizes dinâmicas.
3. Matriz estática
Uma matriz estática significa que o número de elementos da matriz é fixo e inalterado, ou seja, o tamanho do espaço de memória que eles ocupam é fixo e inalterado. Dependendo das diferentes dimensões de uma matriz de tamanho fixo, ela pode ser dividida em matrizes unidimensionais e matrizes multidimensionais.
O formato de sintaxe para declarar matrizes multidimensionais é:
Nome da matriz Dim ([Lista de limites subscrituros]) [como tipo de dados]
O formulário de definição de limite subscrito: [limite inferior subscrito para] limite superior subscrito
A lista de fronteira subscrita refere -se ao limite subscrito de cada dimensão de uma matriz separada por uma vírgula, isto é,
[Limite inferior subscrito para] limite superior subscrito, [limite inferior subscrito para] limite superior subscrito, ..., [limite inferior subscrito ao] limite superior subscrito
(Primeira dimensão) (segunda dimensão) (enésima dimensão)
Quando n = 1, a matriz é chamada de matriz unidimensional;
Os exemplos a seguir são usados para introduzir o uso de matrizes unidimensionais.
'Declare uma matriz de string de comprimento 51 FriendsName
Dim FriendsName (50) como string
'Declare uma matriz inteira global de comprimento 11
Classe pública (10) como inteiro
O número de elementos em uma matriz unidimensional é (limite superior do limite de limite+1).
Para atribuir valores iniciais a uma matriz, as instruções de loop podem ser usadas, como:
Dim i como inteiro
Para i = 0 a 11 'Controle do uso de fluxo do programa de declarações de loop
C (i) = i
Próximo eu
Se o limite inferior do subscrito não for especificado explicitamente, o limite inferior subscrito da matriz será controlado pela instrução Base de opções. Se não houver instrução base de opção, o limite inferior será padrão para 0.
As dimensões de uma matriz não se limitam a 2. No VB, ela pode ser expandida para 60. Em aplicações práticas, não há muitas aplicações para matrizes acima da tridimensionalidade. Ao definir uma matriz multidimensional, você só precisa de uma instrução Dim para especificar todos os limites do subscrito da matriz. Por exemplo:
Lucro obscuro (16,10,12) como moeda
Essa matriz de lucro pode ser usada para representar os lucros de uma loja de departamento com o nome da loja, o departamento e o mês como parâmetros. Por exemplo: o lucro (2,8,11) representa o lucro do oitavo departamento da Segunda Filial em novembro.
4. Matriz dinâmica
Às vezes, antes que a matriz comece a ser usada, é impossível saber o tamanho da matriz necessária para atender às necessidades reais. Obviamente, o tamanho da matriz pode ser definido o suficiente para atender às necessidades práticas de aplicação. Se você usar matrizes dinâmicas, poderá definir com precisão o tamanho da matriz de acordo com as necessidades reais quando o programa estiver em execução.
Ao declarar uma matriz, não dar uma lista de dimensões é declarar a matriz como uma matriz dinâmica. Por exemplo:
Dim Myarry () como inteiro
Antes de usar matrizes dinâmicas, ele deve ser redefinido usando a instrução Redim. Como Myarry declarou anteriormente, você pode usar a seguinte declaração para defini-la como uma matriz bidimensional dinâmica.
Redim Myarry (10,10)
Você também pode definir matrizes dinâmicas várias vezes, executando repetidamente as instruções Redim. A dimensão máxima de uma matriz que pode ser definida usando o Redim é 60. A instrução Redim pode alterar o número de elementos por dimensão de uma matriz, mas não pode alterar o número de dimensões. A seguir, é apresentado um exemplo de uma aplicação padrão da instrução Redim.
Dim Myarry () como um único 'declara a matriz dinâmica
Redim Myarry (30,20,10) Redefina a matriz
Redim Myarry (50,23,21) 'Redefine a matriz novamente
A sintaxe de Redim é a mesma que Dim e também tem a opção de preservar a palavra -chave:
Nome da matriz Redim Preserve ([[[Limite inferior subscrito para] limite superior subscrito] [como tipo de dados]
Por exemplo:
?
- Redimmyarry (50,23,21)
- RedimPreserserveMyarry (50,23,50)