Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
билеты для экзамена (VBSE и Web-среда)2003.doc
Скачиваний:
5
Добавлен:
25.12.2018
Размер:
256 Кб
Скачать

20. Массивы в vbse. Способы перебора элементов массивов. Динамические массивы

Массив – множество величин, имеющих общее имя.

Доступ к элементу массива осуществляется по имени массива и номеру (индексу) элемента, например, А(5) или А(i + 1).

Элементы массивов в VBSE нумеруются с 0.

Элементы массива могут быть разнотипными

A = Array (10, 20, 30)

A(1) = Array (21, 22)

MsgBox A(1) (1)

Массивы могут использоваться в качестве переменных (НИЧ скрипта, подпрограммы) и полей (классы).

Пример массива в качестве поля

Set x = new ar

x.b = A

MsgBox x.b(1) (1)

Class ar

Public b

End Class

Многомерные массивы

Многомерным называется массив с двумя и более индексами. Максимально возможное количество индексов – 60. Общее количество элементов в массиве ограничено максимальным значением типа Long. N-мерный массив – одномерный массив, элементы которого (n - 1)-мерные массивы.

Два способа перебора элементов массива

For each el In A

I

LBound – вычисление верхнего значения индекса. UBound - нижнего

f IsArray (el) then

For i = LBound (el, 1) to UBound (el, 1)

MsgBox el(i)

Next

Else

MsgBox el

End if

Next

Пример описания массива

Dim A(1, 1)

A(1, 1) = 10

MsgBox A(1, 1)

MsgBox isEmpty (A(0, 0))

Динамические массивы

  • Если размеры массива изменяются во время исполнения программы, то это динамический массив

  • Явный способ динамического переопределения массива – утверждение ReDim. Неявный – присваивание переменной вычисленного значения типа массив

  • ReDim [Preserve] varname (subscripts) [, varname (subscripts)]…

Пример: Dim x()

Redim x(10)

Redim Preserve X(10, 2, 150)

21. Подпрограммы в vbse. Описание и запуск подпрограмм. Способы передачи параметров. Подпрограммы в составе классов

Характеристические особенности подпрограмм

  • Подпрограмма запускается при исполнении так называемой головной программы

  • После завершения исполнения подпрограммы управление ВП возвращается в головную подпрограмму

  • Описание подпрограмм должно быть исполнено до запуска подпрограмм

Параметры

1. Программа зависит от так называемых формальных параметров

2. При запуске подпрограммы задаются так называемые фактические параметры

3. Имеется два механизма передачи параметров – ByVal и ByRef

4. Другие механизмы передачи параметров – их частные случаи

Разновидности:

1) Процедуры – запуск специальным утверждением, например, call

2) Функции – запуск при вычислении выражения или специальным утверждением. С именем функции при ее исполнении должно быть связано вычисленное значение

3) Подпрограмма в составе класса

Описание функций

<Модификатор> Function name [(arglist)]

[Statements]

[name = expression]

[Exit Function]

[Statements]

[name = expression]

End Function

<Модификатор>: [Public [Default] | Private]

Пример передачи значением параметра-массива

Dim a

a = Array (1, 2, 3): a(1) = Array (4, 5, 6)

MsgBox f(a) < > a(1) (2)

Function f (ByVal x())

x (1) (2) = 100

f = x (1) (1)

end function

Описание процедур

<Модификатор> Sub name [(arglist)]

[Statements]

[Exit Sub]

[Statements]

End Sub

Подпрограммы в составе класса:

1. Методы

2. Свойства

3. Процедуры обработки событий

Пример метода с модификатором Public Default

Class PF

Public Default function X()

X = “Default!”

End Function

End Class

Set ek = new Pf

MsgBox ek

Свойства:

  • Это именованный ФЧК

  • Состоит из одной, двух или трех подпрограмм с общим именем (это имя свойства)

  • Подпрограммы должны обеспечивать сохранение значения и его извлечение

Пример применения необъектного свойства

Пусть X – свойство

Утверждение X = X + 1

Пример применения объектного свойства

Пусть X – объектное свойство со ссылкой А, а У – объектное свойство со ссылкой В.

Утверждение Set A.X = B.Y