Initialization functions (-functions-called-before-main)

Задайте функции, что вы хотите сгенерированный main вызывать перед другими функциями

Описание

Эта опция влияет на анализ Code Prover только.

Эта опция не доступна для кода, сгенерированного из MATLAB® код или Simulink® модели.

Задайте функции, что вы хотите сгенерированный main вызывать перед другими функциями.

Установите опцию

Пользовательский интерфейс (только десктопные решения): В вашей настройке проекта опция находится на узле Code Prover Verification. Смотрите Зависимости для других опций, которые необходимо также включить.

Командная строка и файл опций: Используйте опцию -functions-called-before-main. Смотрите информацию о командной строке.

Почему использование эта опция

Если вы проверяете модуль или библиотеку, Code Prover генерирует main функционируйте, если вы не существуете. Если main существует, анализ использует существующий main.

Используйте эту опцию наряду с опцией Functions to call (-main-generator-calls) задавать который функции сгенерированный main должен вызвать. Если функция не вызвана прямо или косвенно от main, программное обеспечение не анализирует функцию.

Настройки

Никакое значение по умолчанию

Введите имена функций или выберите из списка.

  • Щелкните, чтобы добавить поле и ввести имя функции.

  • Щелкните, чтобы перечислить функции в вашем коде. Выберите функции из списка.

Если функция или метод не перегружаются, задайте имя функции. В противном случае задайте прототипа функции с аргументами. Например, в следующем коде, необходимо задать прототипы func(int) и func(double).

int func(int x) { 
 return(x * 2);
}
double func(double x) { 
 return(x * 2);
}
Для C++, если функция:

  • Метод класса: сгенерированный main вызывает конструктора класса прежде, чем вызвать эту функцию.

  • Не метод класса: сгенерированный main вызывает эту функцию прежде, чем вызвать методы класса.

Если вы используете оператор разрешения области видимости, чтобы задать функцию от конкретного пространства имен, введите полностью определенное имя, например, myClass::init(int). Если функция не имеет параметра, используйте пустую круглую скобку, например, myClass::init().

Зависимости

Эта опция включена, только если вы выбираете Verify module or library под Code Prover Verification, и ваш код не содержит main функция.

Советы

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

Информация о командной строке

Параметр: -functions-called-before-main
Значение: function1[, function2[,...]]
Никакое значение по умолчанию
Пример 1 (Code Prover): Polyspace Code Prover - источники file_name - основной генератор "функции, вызванные прежде основной" myfunc
Пример 2 (Code Prover): Polyspace Code Prover - источники file_name - основной генератор "функции, вызванные прежде основной" myClass:: init (int)
Пример 1 (Сервер Code Prover): сервер программы автоматического доказательства полипробела кода - источники file_name - основной генератор "функции, вызванные прежде основной" myfunc
Пример 2 (Сервер Code Prover): сервер программы автоматического доказательства полипробела кода - источники file_name - основной генератор "функции, вызванные прежде основной" myClass:: init (int)