Массивы и их использование |
Автор Бельбаков Александр | |
28.09.2001 г. | |
Cтруктуры данных, содержащие в себе не один объект (как переменные), а сразу несколько связанных между собой...
Массивы - структуры данных, содержащие в себе не один объект (как переменные), а сразу несколько связанных между собой. Для объявления массива используют оператор Dim, с указанием имени массива и количества его элементов. Dim Favorites(5) Имя массива - Favorites, который содержит 6 элементов (от 0 до 5). Чтобы указать или плучить значение массива нужно указать его имя и индекс элемента: Favorites(0) = "Технологии Программирования" Favorites(1) = "Visual Basic" Debug.Print Favorites(0) 'в окне отладчика появится строка с текстом Технологии Программирования При объявлении массива можно указать его тип, используя ключевое слово As. По умолчанию первый элемент массива имеет индекс 0, но можно и указать нижнюю границу: Dim Favorites(1 To 5) As String Для хранения многомерных данных используют соответствующие массивы. Допустим, необходимо записать в массив имена любимых сайтов и их адреса. Одномерный массив для этого не подойдёт, можно воспользоваться двумя отдельными массивами, но это неудобно в управлении. Тогда стоит воспользоваться многомерным массивом. Разница между одномерным и многомерным массивом состит в количестве индексов, отделяемых запятой: Sites(5,5) 'первый индекс для названий сайтов, второй для их адресов. Как и в одномерных массивах, так и в многомерных можно указать нижнюю границу. Иногда при создании массива бывает неизвестно количество его элементов. Для объявления такого массива используется тоже способ как и при объявлении обычного массива только без указания размера. Когда при выполнении программы станет известен размер массива, тогда используйте оператор ReDim: Dim Favorites() ReDim Favorites(SiteNumbers) ' SiteNumbers - число, вводимое пользователем При измении размера массива Вы можете столкнуться с проблемой потери данных. Предположим, существует необходимость изменить размер массива и добавить ещё один элемент. При использовании оператора ReDim все данные потеряются, а нам, всего лишь, надо добавить один элемент. Но возможность изменить размер массива без потери данных существует. Ключевое слово Preserve после оператора ReDim предотвращает потерю даннных (для определения количества элементов в массиве используют функцию Ubound): ReDim Preserve Favorites(Ubound(Favorites) + 1) В Visual Basic'е существует возможность создания сложных структур, типа массив массивов, т.е. элементами сложного массива могут быть другие массивы: Dim Sites(5) As Strings Dim Links(5) As Strings Dim Favorites(1) as Variant Favorites(0) = Sites() 'без указания индекса присваивается целый массив Favorites(1) = Links() или Favorites(0) = Sites(3) 'присваивается часть массива Обратите внимание, что элементами одного массива могут быть другие массивы, если массив массивов был объявлен как Variant. |