Чтобы подготовить свои алгоритмы к генерации кода, MathWorks рекомендует вам выбрать стратегию отладки для обнаружения и исправления нарушений в MATLAB® приложения, особенно если они состоят из большого количества файлов MATLAB, которые вызывают функции друг друга. Вот две лучшие практики:
Стратегия отладки | Что делать | Профессионалы | Недостатки |
---|---|---|---|
Верификация снизу вверх |
|
| Требуется тестирование приложений, которое работает снизу вверх |
Верификация сверху вниз |
| Позволяет вам сохранить тесты верхнего уровня | Представляет посторонний код, который необходимо удалить после верификации кода, включая:
|
Чтобы обнаружить потенциальные проблемы для создания файлов MEX, когда вы пишете свой алгоритм MATLAB, добавьте %#codegen
директива к коду, который вы хотите fiaccel
для компиляции. Добавление этой директивы указывает, что вы намерены сгенерировать код из алгоритма и включает подробную диагностику во время анализа кода MATLAB.
Прежде чем вы сможете успешно сгенерировать код из алгоритма MATLAB, необходимо проверить, что алгоритм не содержит нарушений синтаксиса и семантики, которые могли бы вызвать ошибки во время компиляции, как описано в Detect и Debug Code Generation Errors.
fiaccel
проверяет все потенциальные нарушения синтаксиса во время компиляции. Когда fiaccel
обнаруживает ошибки или предупреждения, автоматически формирует отчет генерации кода, который описывает проблемы и предоставляет ссылки на нарушающий код. См. «Отчеты генерации кода».
Если ваш код MATLAB вызывает функции на пути MATLAB, fiaccel
пытается скомпилировать эти функции, если вы не объявляете их внешними.