Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Плещёв ИП 2010-04-04 doc.doc
Скачиваний:
108
Добавлен:
13.05.2015
Размер:
5.96 Mб
Скачать

2.1.1. Определение типа пользователя ‑ Type

Тип пользователя задается командой вида:

Type <имя типа>

<имя элемента> As <тип элемента>

. . .

<имя элемента> As <тип элемента>

End Type

Команда служит для определения нового типа пользователя, на кото­рый можно ссылаться после слова Asпри объявлении составных перемен­ных, например записей. ВVisualBasicэта команда указывается в секции глобальных объявлений (General)(Declarations) модуля.

2.1.2. Объявление записи

Для объявления записи используется команда:

{Dim | Public} <имя записи> As <тип пользователя>

[,<имя записи> As <тип пользователя>]...

Запись ‑ группа логически связанных переменных, на­зы­­­вае­­мых по­ля­­ми. Перед объявлением записи определяется тип пользова­теля. Поля ана­­логичны перемен­ным, с тем отличием, что при обраще­нии к ним перед именем поля тре­бует­ся указание уточнителя поля в виде имени записи и точки. Полями записи могут быть и массивы, и записи.

Пример записи, которая содержит другую запись domadress.

Type adress ‘ тип пользователя adress ‑ запись с адресом

gorod As String * 30 ‘ город

ulica As String * 30 ' улица

dom As String * 20 ' дом

kvartira As String * 10 ' квартира

End Type ‘ конец типа adress

Typepersona' тип пользователяpersona‑запись о человеке

fam As String * 30 ‘ фамилия

domadressAsadress' запись с домашним адресом типаadress

End Type ' конец определения типа persona

Dim student As persona ' объявление записи student типа persona

student.fam= ”Иванов” ‘ заполнение полей записи

student.domadress.gorod= ”Екатеринбург”

student.domadress.ulica=”Ленина”

student.domadress.dom = ”13 корпус 2”

student.domadress.kvartira = ”123/B”

2.1.3. Объявление массива

Массив ‑ группа однотипных переменных, называемых элементами массива. При обращении к элементам массива после имени элемента тре­­бует­ся указать в круглых скоб­ках его индекс, как правило, совпадающий с порядко­вым номером в массиве (по умолчанию отсчет с нуля (п. 2.2.3)). Используя мас­сивы, можно организо­вать циклы обработки их элементов.

Команда объявления массива имеет вид:

{Dim | Public} <имя массива> (<индексы>) [ As [ <тип>]]

[,<имя массива> (<индексы>) [ As [<тип>]]]...

<индексы> ‑ размерность массива в виде (N1 [, N2 ]...).

Ni ‑ индекс последнего элемента по i-й размерности. Размерность можно указывать и в виде n Tok, где n/k‑ начальное/конечное значение индекса.

Примерыобъявления одномерных массивов.

Dim M1 (10) As Long, Fam (1 To 30) As String*40, Ur%(100)

Примерыобъявления двумерных массивов.

Dim M2 (10,100) As Long, Famstud (5,30) As String*40, M2#(10,7)

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

Пример записи с массивомCenaиз двух элементов.

Type stovar ' начало определения типа пользователя stovar

kt As Integer ' код товара - целочисленное поле

nt As String *20 ' название товара - строка из 20 символов

cena(1) AsSingle' массив с оптовой и розничной ценой товара

End Type ' конец определения типа stovar

DimzstovarAsstovar'объявление записиzstovarтипаstovar

zstovar.kt=1:zstovar.nt=”Молоко”:zstovar.cena(0)=6.2:zstovar.cena(1)=8.1

Пример массива с элементами‑записями (см. пример из п. 2.1.2).

Dim mstudent(20) As persona'объявление массива записей типаpersona

mstudent(0).fam = ”Иванов”‘заполнение значениями первой записи массива

mstudent(0).domadress.gorod = ”Екатеринбург”

mstudent(0).domadress.ulica= ”Ленина”

mstudent(0).domadress.dom=”13 корпус 2”

mstudent(0).domadress.kvartira = ”123/B”