- •Представление информации
- •Представление символов
- •Представление целых чисел (способ с фиксированной точкой)
- •Представление чисел с дробной частью (способ с плавающей точкой)
- •Некоторые важные итоги
- •О Visual Basic (далее vb) в сравнении с другими языками.
- •Основные типы данных vb
- •Типы Byte/Integer/Long
- •Типы Single/Double/Currency
- •Структура проекта
- •Переменные
- •Область видимости переменных
- •Время жизни переменных
- •Константы
- •Преобразование и совместимость типов
- •Ввод и вывод значений переменных Ввод данных с помощью функции InputBox
- •Вывод данных с помощью инструкции Print
- •Форматирование вывода
- •Лекция 6 Вывод данных с помощью функции MsgBox
- •Управление порядком выполнения инструкций
- •Условная инструкция If ... End If
- •Однострочный синтаксис
- •Блочный синтаксис
- •Инструкция выбора Select Case (выбрать в случае)
- •Инструкции цикла
- •1. Параметрический цикл For… Next
- •Лекция 7
- •2. Итерационный циклDoWhile...LoopилиDo...LoopWhile
- •3. Итерационный цикл Do Until...Loop или Do...Loop Until
- •Операции и функции
- •Лекция 8 Массив
- •1. Описание массива фиксированного размера
- •2. Описание динамического массива
- •3. Присвоение массивов
- •Лекция 9
- •Логические операции
- •Лекция 10 процедуры и функции
- •Виды процедур и функций
- •Вызов процедур и функций
- •Объявление процедур и функций
- •Именованные аргументы
- •Область действия имен процедур и функций
- •Пример 1.
- •Пример 2.
- •Лекция 11
- •Лекция 12
- •Перечень подзадач
- •Блок-схема алгоритма функции Проверка
- •Разработка программы
- •Лекция 13 Пример 4
- •Передача аргументов по ссылке и по значению
- •Лекция 14 Отладка
- •1. Режим отладки
- •2. Точка останова
- •3. Пошаговое выполнение программы
- •3.1. Шаг с заходом (Step into)
- •3.2. Шаг с обходом (Step Over)
- •3.3. Шаг с выходом (Step Out)
- •3.4. Выполнить до текущей позиции (Run To Cursor)
- •3.5. Список вызовов
- •4. Окна режима отладки
- •4.1. Окно подсказки Data Tips
- •4.2. Окно контрольного значения (WatchWindow)
- •4.3. Окно локальных переменных (LocalWindow)
- •4.4. Окно отладки (ImmediateWindow)
- •4.5. Инструкция Print
- •5. Обработка ошибок времени выполнения
- •5.1. Перехват ошибки
- •5.2 Проверка и устранение ошибки
- •5.3 Продолжение выполнения программы
- •Лекция 15 Пользовательский тип данных
- •ИнструкцияWith
- •Использование в качестве аргументов процедур и функции имен форм и элементов управления
- •Знаки типов
- •Графика
- •1. Система координат
- •1.1 Свойство ScaleMode
- •1.2. СвойстваScaleLeftиScaleTop
- •Лекция 16
- •1.3. СвойстваScaleWidthиScaleHeigt
- •1.4. МетодScale
- •2. Графические изображения
- •3. Графические управляющие элементы
- •4. Работа с рисунками
- •5. Графические методы
- •6. Построение графиков функций
- •Лекция 17 Файлы
- •Номер файла
- •Типы доступа к файлам
- •Последовательный доступ
- •Чтение из файла последовательного доступа
- •Запись в файл последовательного доступа
- •Произвольный доступ
- •Открытие файла
- •Ввод и вывод (Get- чтение,Put- запись)
- •Двоичный доступ
- •Открытие файла для двоичного доступа
- •Ввод и вывод
- •Лекция 18 События
- •События клавиатуры
- •Объекты, классы, коллекции
- •Экзаменационные вопросы
Передача аргументов по ссылке и по значению
Передача значений аргументов при вызове процедуры или функции по ссылке (в списке аргументов для передаваемого таким образом аргумента используется ключевое слово ByRef) означает, что вызываемой процедуре или функции передается адрес ячейки памяти, по которому хранится значение аргумента (т.е. вызываемая процедура или функция для работы с переданным по ссылке аргументом использует ту же ячейку или область памяти, что и вызывающая процедура пли функция). При этом не выделяется дополнительная память для работы с переданным аргументом в вызываемой программе. Изменение значения аргумента в вызываемой процедуре или в функции означает изменение значения и в вызывающей процедуре или в функции (используется одна и та же ячейка или область памяти).
Передача по ссылке (ее поясняет рис 13.2) определена по умолчанию.
|
Рис. 13.2. Пояснение связи по ссылке |
Передача значений аргументов при вызове процедуры или функции по значению (в списке аргументов используется ключевое слово ByVal)означает, что для аргумента выделяется дополнительная ячейка или область памяти, в которую записывается значение передаваемого аргумента. Изменения значения аргумента в вызываемой процедуре или в функции не ведут к изменению аргумента в вызывающей процедуре или в функции, так как вызываемая процедура или функция использует для аргумента другую ячейку или область памяти аналогично локальным данным (см. рис. 13.3). Это удобно, если модификация данных необходима только внутри вызываемой процедуры или функции и нет необходимости передавать измененные данные обратно в вызывающую процедуру или функцию.
Вместе с тем передача по значению (выделение дополнительной памяти) приводит к неэффективному использованию памяти. В связи с этим, для строк символов и массивов нецелесообразно использовать передачу по значению.
Рис. 13.3. Пояснение связи по значению |
Лекция 14 Отладка
Различают ошибки программы:
Синтаксические ошибки (состоят в нарушении правил синтаксиса инструкций).
Ошибки периода выполнения программы.
Логические ошибки.
О синтаксических ошибках и ошибках периода выполнения среда сообщает на этапе ввода программного кода или его выполнения соответственно. Это упрощает обнаружение и исправление ошибок. Самым "крепким орешком" среди всех возможных являются логические ошибки. При их появлении код выполняется корректно, но желаемый результат не достигается.
Для выявления причин логической ошибки и ее устранения требуется обширное тестирование. VBпредлагает некоторые эффективные инструменты для поиска источников ошибок.
Среда VBможет находиться в трех режимах:
- разработка – design;
- выполнение – run;
- отладка – break.
1. Режим отладки
Набор команд меню Runи назначение многих кнопок панели инструментов зависит от состояния среды разработки. В режиме проектирования приложение можно только запустить, все же остальные возможности недоступны. При запуске можно выбрать один из двух вариантов: без полной компиляции или полную компиляцию всех процедур. Приложение запускается нажатием клавишиF5или кнопки Startв среде разработкиVB.
Переход в режим отладки выполняется нажатием клавиш Ctrl+Breakили щелчком на кнопке Breakпанели инструментов.В режиме отладки можно выбирать один из вариантов: продолжать программу или перейти в режим разработки.
В режим выполнения можно перейти, нажав повторно клавишу F5или щелкнув на кнопке Continue.Обратите внимание, что в режиме отладки кнопка Startносит название Continue.
Название текущего режима отображается в квадратных скобках в строке заголовка VB.
В режим отладки Вы попадаете и тогда, когда во время выполнения программы, запущенной из среды разработки, возникла необрабатываемая ошибка выполнения. При этом выдается сообщение об ошибке с возможностью выбора одного из вариантов: завершение выполнения или переход в режим отладки.
Большое преимущество режима отладки заключается в том, что выполнение программы приостанавливается в месте возникновения ошибки. Другим важным моментом является то, что при этом сохраняются значения всех текущих переменных и их можно увидеть. Для этого достаточно навести указатель мыши на имя соответствующей переменной.
В среде разработки VBинструменты поиска ошибок объединены в меню Debug.Воспользовавшись командой Toolbars меню View,можно отобразить панель инструментов Debugдля доступа к основным средствам отладки.