Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ГОС информатика / ТЕОРИЯ наша!!! / Программирование.doc
Скачиваний:
46
Добавлен:
18.03.2015
Размер:
90.11 Кб
Скачать

Программирование(4). Динамические структуры в ооп

Конструирование объектов: строки Тип данных String используется, чтобы хранить последовательность символов (предложения). По умолчанию String обрабатывается как AnsiString. Он может быть обработан как ShortString, если директива компилятора $LongStrings установлена в Off (по умолчанию установлена в On).AnsiChar может содержать любое число символов, ограниченное только памятью.

Версия 2: Вынуждает строку стать ShortString, размером FixedSize (до 255 символов). Это очень важно при создании многочисленных строк, и особенно при сохранении строк в записях (как во 2-ом примере).

Строки могут быть присвоены от других строк, функций, которые возвращают строку как в показанном примере.

Примечания

В строках первый символ имеет индекс 1 (массивы начинаются с 0 для первого элемента).

, стеки

, списки,

Очереди

, деревья.

2. Особенности Динамические структуры - данные, размер которых может меняться во время работы программы. В Delphi есть массивы, которые так и называются динамическими, есть строки. TStream тоже можно так назвать, его размер легко изменить в любой момент. Все замечательно, и очень удобно для программиста. Вот только в современных компьютерах работа с памятью - одна из самых медленных операций, да еще и скорость работы память практически не зависит от частоты процессора. А изменение размера структуры, как правило, приводит к перераспределению памяти. Вот и получается, что изменение размера массива, например, весьма долгая операция.

3. Основные операции с динамическими структурами:

Создание

поиск, вставка

удаление элемента.

Программирование(5). Интерфейсные объекты события и сообщения.

Управляющие элементы:

окна Стандартное окно в Windows имеет заголовок, кнопки для вызова системного (оконного) меню, кнопки сворачивания, разворачивания, закрытия окна и рамки, позволяющие плавно изменять размеры окна.

Диалоговые окна предназначены для задания параметров, уточнения характеристик или действий.

Среда Windows поддерживает два режима отображения окон – модальный и немодальный. Диалоговые панели обычно работают в модальном режиме. диалоги Выполнение целой группы операций, наиболее часто используемых приложениями обеспечивается стандартными диалогами. К ним относятся диалоги открытия и сохранения файлов, печати документов, установки параметров шрифта и т.д. В составе Delphi имеется набор компонентов, инкапсулирующих стандартные системные диалоги. Они размещены на странице Dialogs палитры компонентов. Сами компоненты являются невизуальными, но обеспечивают появление соответствующих диалогов при вызове из меню или панели инструментов приложения.

Вызов диалоговой формы во время работы приложения осуществляется методом Execute, возвращающим результат логического типа. Если пользователь, например, выбрал файл и нажал кнопку <OK>, то функция возвращает True.

.

2.События Простейшие события, на которые иногда нужно реагировать - это, например, события, связанные с мышкой (они есть практически у всех видимых объектов) или событие Click для кнопки TButton.

сообщения Сообщение - это извещение о некотором имевшем место событии, посылаемое системой Windows в адрес приложения. Любые действия пользователя - щелчок мышью, изменение размеров окна приложения, нажатие клавиши на клавиатуре - вынуждают Windows отправить приложению сообщение, извещающее о том, что же произошло в системе.

3. Механизмы передачи и обработки сообщений в объектно-ориентированных средах

В целом система обработки сообщений выглядит следующим образом. Delphi регистрирует метод с именем MainWndProc как оконную процедуру для каждого окна приложения. Эта процедура содержит блок обработки исключительных ситуаций и передает поступившее сообщение виртуальному методу с именем WndProc. Вызов WndProc заключен в цикл обработки исключительных ситуаций для того, чтобы приложение могло обработать возникшую исключительную ситуацию. При возникновении исключения вызывается метод класса HandleException. Метод WndProc описан уже в классе TControl (TObject -> TPersistent -> TComponent -> TControl) и перекрыт в классе TWinControl. Метод MainWndProc описан в классе TWinControl.

Метод(ы) WndProc проверяет поступающие сообщения, отсекая те из них, которые недопустимы в данный момент времени. В конечном счете WndProc вызывает статический метод Dispatch, который отыскивает метод, ответственный за обработку данного сообщения.

В свою очередь Dispatch анализирует поле Msg сообщения для того, чтобы определить, какой метод компонента может обработать это сообщение. Если компонент не имеет специального обработчика сообщения, вызывается обработчик DefaultHandler.

.

4.Порядок обработки событий.

При загрузке формы Дельфи, происходят и обрабатываются следующие события и в следующем порядке:

  1. On Create

  2. On Show

  3. On Paint

  4. On Activate

  5. On Resize

  6. On Paint

Создается автоматически в разделе реализации

5. Обработка исключительных ситуаций. Исключительная ситуация- изменение условий выполнения программы, вызывающее прерывание или полное прекращение выполнения.(некоторые возможные источники: компоненты, включенные в программу. Ошибка ввода. Драйверы баз данных. Операционная система ). Когда возникает исключительная ситуация , то независимо от ее источника, программа узнает о ней. В DELFI определены конструкции для бработки локальных исключительных ситуаций. Try…expect и try finally.

1)Конструкция try finally.

try

{код программы с возможной ошибкой выполнения}

Finally

{блок операторов выполняющихся в любом случае}

End;

Используется, когда нет необходимости использовать обработчик событий, а необходимо гарантированно выполнить определенную последовательность действий. 2)конструкция Try…expect применяется для перехвата исключительной ситуации с возможной обработкой, предусматривающей освобождение экземпляра обработки исключительной ситуации, после чего выполнение программы продолжается, как обычно. В этой конструкции содержится необязательный элемент on…do, с помощью которого можно безошибочно определить тип исключительной ситуации и узнать адрес образца объекта его обработки,

Соседние файлы в папке ТЕОРИЯ наша!!!