Программирование >>  Проектирование интерфейса пользователя 

1 ... 59 60 61 [ 62 ] 63 64 65 ... 153


3. Могут ли в объявлениях типов содержаться функции или процедуры?

4. Допускаются ли в определениях типов члены-константы?

5. Позволяется ли включать в объявление типа ссылочную переменную?

Упражнения

1. Создайте объявление типа для хранения данных об имени человека, его адресе и номере телефона.

2. Определите тип, одним из членов которого будет экземпляр типа, созданного в предыдущем упражнении. Что может послужить мотивом подобных действий? Почему бы просто не исправить объявление исходного типа?

3. Объявите перечислимый тип, представляющий все сорта мороженого.



12-i7i час


Управление данными

переменного объема

Ввод данных в память компьютера и их обработка - одна из основных функций, выполняемых программами. Массивы (главный объект нашего внимания в ходе текущего занятия) выступают базовой и наиболее часто используемой структурой данных.

Массив определяется в виде набора, состоящего из нуля или более элементов данных одного типа. Подобная конструкция обладает и сильными, и слабыми сторонами. Несмотря на ряд ограничений, массивы - при умелом управлении ими - способны стать чрезвычайно полезным, простым и мощным инструментом программирования.

Основные темы занятия.

Определение массивов.

Динамическое изменение размеров массивов.

Функции, позволяющие избежать ошибок при использовании массивов.

Сортировка массивов данных.

Знакомство с массивами

Массивы - одна из традиционных и наиболее древних структур данных. Массивы, позволяющие хранить в памяти компьютера наборы однородных данных, находят самое широкое применение. Они, например, способны с успехом заменить конструкцию вида Select Case (о ней речь пойдет в главе 21-й час. Основы программирования классов ).

Если данные уже представлены в виде таблицы или коллекции, применять массивы, вероятно, нецелесообразно. Однако, если стоит задача создания временного хранилища данных в памяти и их динамической обработки, в такой ситуации массивы

сослужат хорошую службу. /

Массив - это непрерывный блок адресов памяти, обозначаемый одним именем

и трактуемый в виде единственной переменной. Механизм построения массивов по-



зволяет говорить о памяти как о множестве ячеек , каждая из которых способна хранить определенное значение. Все значения, присвоенные элементам массива, относятся к одному типу данных. Впрочем, если речь идет о типе Variant, природа отдельных элементов массива может быть совершенно различна.

Массивы бывают и многомерными. Способность компьютеров управлять массивами данных намного превосходит пределы житейского восприятия. Мир, который нас окружает, трехмерный. Даже если вы и не физики, то все же нетрудно мысленно представить еще одно, четвертое, измерение - время. А что дальше? Но компьютерная программа способна оперировать массивами произвольной размерности и объема - лишь бы хватило памяти. Конечно, все это, большей частью, теория. На практике, к нашему всеобщему удовольствию, возможностей одно- и двухмерных массивов, как правило, вполне достаточно.

Для хранения целого числа необходимо 32 бита, или 4 байта. Целочисленный массив из 10 элементов, таким образом, займет в памяти, около 40 байт. Массивы легче воспринимать в виде ячеек памяти (рис. 12.1). Каждый элемент массива адресуется посредством индекса, который может принимать значения в пределах от наименьшего до наибольшего допустимого номера включительно.

Рис 1. Дл ещения массива используется непрерывный фрагмент компьютерной памяти. В каждой ячейке содержится 16 бит, или 2 байта


В основе операций над индексами массивов лежит предположение о том, что массиву отвечает так называемый базовый адрес памяти. Адрес очередного элемента массива в памяти можно рассчитать по формуле БазовыйАдрес + (Индекс * РазмерТипаЭлемента) К счастью, компилятор VBA выполняет все вычисления самостоятельно, и заботиться о них не нужно. Только в языках ассемблера

и С подобные операции все еще находят широкое применение.

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

: о Е о

Самый сложный вопрос, связанный с использованием массивов в программе на языке VBA, заключается в определении верного исходного размера массива и типа ею элементов. Синтаксис объявления массива лишь незначительно отличается от конструкции объявления переменной:

Di сходныйРазмер] As ТипДанных

В выражении объявления могут использоваться служебные слова ReDim (вместо Dim) и Static (дополнительно). О них речь пойдет чуть позже. Основная конструкция объявления массивов связана с использованием слова Dim, за которым следует имя массива, сопровождаемое целым числом в круглых скобках. Если число в скобках не задано, массиву изначально память не отводится. Завершается выражение объявления как обычно - служебным словом As и обозначением типа данных, в качестве которого допустимо использовать любой стандартный или пользовательский тип.



1 ... 59 60 61 [ 62 ] 63 64 65 ... 153

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика