coder.extrinsic | Объявите функцию как значение внешних параметров и выполните его в MATLAB |
coder.ignoreConst | Предотвратите использование постоянного значения выражения для функциональных специализаций |
coder.unroll | Разверните for - цикл путем создания копии тела цикла для каждой итерации цикла |
Директива компиляции %#codegen
Укажите, что функция MATLAB® предназначается для генерации кода.
Генерация кода для списков аргументов переменной длины
Сгенерируйте код для varargin
и varargout
.
Генерация кода для рекурсивных функций
Используйте рекурсивные функции в коде MATLAB, который предназначается для генерации кода.
Обеспечьте генератор кода, чтобы использовать рекурсию во время выполнения
Перепишите свой код MATLAB так, чтобы генератор кода использовал рекурсию во время выполнения вместо рекурсии времени компиляции.
Генерация кода для анонимных функций
Используйте анонимные функции в коде MATLAB, предназначенном для генерации кода.
Генерация кода для вложенных функций
Используйте вложенные функции в коде MATLAB, предназначенном для генерации кода.
Разрешение вызовов функции для генерации кода
Генератор кода использует правила приоритета, чтобы разрешить вызовы функции.
Разрешение типов файлов на пути генерации кода
Генератор кода использует правила приоритета, чтобы разрешить типы файлов.
Используйте MATLAB Engine, чтобы выполнить вызов функции в сгенерированном коде
Если функция не поддерживается для генерации кода, объявите, что он как extrinsic выполняется в MATLAB.
Непостоянный индекс в varargin или varargout в цикле for
Обеспечьте развертывание цикла, когда генератор кода не сможет определить значение индекса в varargin
или varargout
.
Выходная переменная должна быть присвоена перед рекурсивным вызовом во время выполнения
Диагностируйте присвоение выходной переменной для рекурсии во время выполнения.
Достигнутый предел рекурсии времени компиляции
Диагностируйте предельную ошибку рекурсии времени компиляции.