Среда разработки И++

Входные и выходные параметры

Входные параметры передаются на вход программе и не требуют режима отладчика. Для отображения окна входных и выходных параметров необходимо выбрать пункт меню Отладка/Параметры запуска...

В данном окне отображается список параметров, указанных в скобках после ключевого слова ВЫЧИСЛИТЬ, например:

ВЫЧИСЛИТЬ(ПЕРЕМ АНАЛИТ_КОНТЕКСТ: контекст;
          ПЕРЕМ АНАЛИТИКА: об;
          ПЕРЕМ ПРАВА_ДОСТУПА: доступ;
          ПЕРЕМ МОДИФ_ПАРАМ: мп;
          ПЕРЕМ ПУБЛ_ПАРАМ: публ;
          ПЕРЕМ СТРОКА: рез)

Параметры, перед которыми расположено ключевое слово ПЕРЕМ, являются также выходными параметрами.

Окно входных параметров поддерживает три режима задания значений параметров:

Все наборы параметров отображаются в выпадающем списке в том порядке, в котором были перечислены выше. Названия можно изменять только для наборов параметров с ручным редактированием. Для остальных наборов (автоматических) перед именем добавляется звездочка.

Значения параметров из автоматических наборов может быть скопированы в буфер обмена (по одиночке или всем набором). При вставке добавляется новый набор с возможностью ручного редактирования.

Входные параметры трассировки

Трассировка входных параметров записывает файлы ibpset в папку отчета профайлера. Такие наборы параметров отображаются в верхней части списка по убыванию времени формирования. Загружается не более 10 самых новых файлов. Именем таких наборов является дата и время формирования с добавлением слова "трассировка". Наборы с одинаковыми значениями даты и времени отличаются суффиксом (1), (2) и т.д.

При появлении новых файлов ibpset в папке профайлера, соответствующие элементы попадают в список автоматически.

Дополнительные папки для мониторинга появления новых файлов ibpset можно указать в файле ippide.ini в параметре [Folders] AdditionalProfilerPaths через точку с запятой.

Использование инициализирующего кода

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

Файлы инициализирующего кода имеют расширение .ibpini и располагаются в папке проекта. В выпадающем списке отображется имя такого файла без расширения. Для одного проекта файлов .ibpini модет быть несколько. При их добавлении или удалении список в окне параметров обновляется автоматически.

По сути файл .ibpini - это текстовый файл, аналог основного исходного текста программы ipp. Его задачей является формирование значений параметров, соответствующих программе по количеству и типу. Т.к. параметры извлекаются из вспомогательной программы, то все ее параметры должны быть выходными. Даже те, которые в основной программе являются только входными (без ПЕРЕМ).

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

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

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

Ручное редактирование входных параметров

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

При помощи пунктов Другие команды/... можно удалять, копировать наборы команд, сохранять в файл *.ibpset, а также загружать из файла.

Выходные параметры

На закладке Выходные параметры отображаются значения выходных параметров проекта. Для их отображения необходимо установить опцию Показывать значения выходных параметров на закладке Отладка диалога настроек проекта, либо при помощи пункта меню Отладка/Показывать выходные параметры.


См. также: