Отчеты генерации кода

Когда вы включаете генерацию отчета, или ошибка происходит, fiaccel генерирует отчет генерации кода. Используйте отчет отладить ваш MATLAB® функции и проверяют, что они подходят для генерации кода. Отчет предоставляет информацию о типе для переменных и выражений в ваших функциях. Эта информация помогает вам найти источники сообщений об ошибке и изучить правила распространения типа.

Сообщите о генерации

Чтобы управлять генерацией и открытием отчета, использовать fiaccel опции:

  • Чтобы сгенерировать отчет, используйте -report опция.

  • Чтобы сгенерировать и открыть отчет, используйте -launchreport опция.

В качестве альтернативы свойства объектов настройки использования:

  • Чтобы сгенерировать отчет, установите GenerateReport к true.

  • Если вы хотите fiaccel чтобы открыть отчет для вас, установите LaunchReport к true.

Сообщите о местоположении

Отчет генерации кода называют report.mldatx. Это расположено в html подпапка генерации кода вывела папку. Если у вас есть MATLAB R2018a или позже, можно открыть report.mldatx файл путем двойного клика по нему.

Ошибки и предупреждения

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

Файлы и функции

В панели MATLAB Source представление Function List организует функции согласно содержанию файла. Чтобы визуализировать функции согласно структуре вызова, используйте представление Call Tree.

Чтобы просмотреть функцию в панели кода отчета, кликните по функции в списке. Нажатие на функцию открывает файл, который содержит функцию. Чтобы отредактировать выбранный файл в редакторе MATLAB, нажмите Edit in MATLAB или кликните по номеру строки в панели кода.

Специализированные функции или классы

Когда функция вызвана с различными типами входных параметров, или класс использует различные типы для своих свойств, генератор кода производит специализации. В панели MATLAB Source пронумерованные функции (или классы) указывают на специализации. Например:

Источник MATLAB

Чтобы просмотреть функцию MATLAB в панели кода, кликните по имени функции в панели MATLAB Source. В панели кода, когда вы делаете паузу на переменной или выражении, подсказка отображает информацию о своем размере, введите, и сложность. Кроме того, подсветка синтаксиса помогает вам идентифицировать элементы синтаксиса MATLAB и определенные атрибуты генерации кода, такой как, является ли функция значением внешних параметров или является ли аргумент постоянным.

Внешние функции

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

Аргументы константы

Оранжевый текст указывает на аргумент константы времени компиляции к функции точки входа или специализированной функции. Подсказка включает постоянное значение.

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

Чтобы экспортировать значение в переменную в рабочей области, кликните по Значку экспорта.

Переменные MATLAB

Вкладка Variables предоставляет информацию о переменных для выбранной функции MATLAB. Чтобы выбрать функцию, кликните по функции в панели MATLAB Source.

Таблица переменных показывает:

  • Класс, размер и сложность

  • Свойства фиксированных точек

Эта информация помогает вам изучить распространение типа и идентифицировать ошибки несоответствия типов.

Визуальные индикаторы на вкладке переменных

Эта таблица описывает символы, значки и другие индикаторы в таблице переменных.

Столбец в таблице переменныхИндикаторОписание
ИмярасширительПеременная имеет элементы или свойства, которые вы видите путем нажатия на расширитель.
Имя{:}Однородный массив ячеек (все элементы имеют те же свойства).
Имя{n}nэлемент th неоднородного массива ячеек.
Классv > nv снова используется с различным классом, размером и сложностью. Номер n идентифицирует повторное использование с уникальным набором свойств. Когда вы делаете паузу на переименованной переменной, отчет подсвечивает только экземпляры этой переменной, которые совместно используют класс, размер и сложность. Смотрите Повторное использование Та же Переменная с Различными Свойствами.
Размер:nМассив переменного размера с верхней границей n.
Размер:?Массив переменного размера без верхней границы.
РазмеркурсивМассив переменного размера, размерности которого не изменяют размер во время выполнения.
Классsparse префиксРазреженный массив.
Классcomplex префиксКомплексное число.
Класс

Фиксированная точка.

Чтобы видеть свойства фиксированной точки, кликните по значку.

Понимание кода

Если вы включаете создание отчетов разностей потенциалов, можно просмотреть сообщения на вкладке Code Insights. Отчет включает в себя сообщения разностей потенциалов, только если вы включили создание отчетов разностей потенциалов. Смотрите, что Разности потенциалов Сообщают.

Сообщите об ограничениях

  • Сводные данные точки входа показывают отдельные элементы varargin и varargout, но таблица переменных не показывает их.

  • Отчет не показывает полную информацию для развернутых циклов. Это отображает типы данных одной произвольной итерации.

  • Отчет не показывает информацию о мертвом коде.

Смотрите также

Похожие темы