Генерация кода из кода MATLAB® поддерживает следующие функции языка:
n-мерные массивы (см. Ограничения Размера Массивов для Генерации кода),
операции над матрицей, включая удаление строк и столбцов
данные переменного размера (см. Генерацию кода для Массивов Переменного Размера),
индексирование (см. Несовместимость с MATLAB в Операциях Индексирования матриц для Генерации кода),
комплексные числа (см. Генерацию кода для Комплексных данных),
числовые классы (см. Поддерживаемые Типы переменных),
и целочисленная математика с одинарной точностью, с двойной точностью
перечисления (см. Генерацию кода для Перечислений),
вычисления с фиксированной точкой
операторы if
программного управления,
switch
для
в то время как
, и break
арифметика, операторы сравнения и логические операторы
локальные функции
персистентные переменные
глобальные переменные
структуры (см. Определение Структуры для Генерации кода),
массивы ячеек (см. Массивы ячеек),
таблицы (см. Генерацию кода для Таблиц),
расписания, которые имеют duration
векторы как времена строки (см. Генерацию кода для Расписаний),
символы (см. Кодирование Символов в Генерации кода),
строковые скаляры (см. Генерацию кода для Строк),
categorical
массивы (см. Генерацию кода для Категориальных массивов),
datetime
массивы (см. Генерацию кода для Массивов datetime),
duration
массивы (см. Генерацию кода для Массивов типа Duration),
разреженные матрицы (см. Генерацию кода для Разреженных матриц),
указатели на функцию (см. Ограничения Указателя на функцию для Генерации кода),
анонимные функции (см. Генерацию кода для Анонимных функций),
рекурсивные функции (см. Генерацию кода для Рекурсивных функций),
вложенные функции (см. Генерацию кода для Вложенных функций),
списки аргументов ввода и вывода переменной длины (см. Генерацию кода для Списков аргументов Переменной длины),
подмножество функций тулбокса MATLAB (см. Функции и Объекты, Поддержанные для Генерации кода C/C++),
подмножество функций и Системных объектов в нескольких тулбоксах (см. Функции и Объекты, Поддержанные для Генерации кода C/C++),
Классы MATLAB (см. Определение Классов MATLAB для Генерации кода),
вызовы функции (см. Разрешение Вызовов функции для Генерации кода),
Генерация кода из MATLAB не поддерживает следующие часто используемые функции MATLAB:
скрипты
неявное расширение
Генерация кода не поддерживает неявное расширение массивов с совместимыми размерами во время выполнения поэлементных операций или функций. Если ваш код MATLAB использует неявное расширение, результаты генерации кода по ошибке несоответствия размера. Для массивов фиксированного размера ошибка происходит во время компиляции. Для массивов переменного размера ошибка происходит во время выполнения. Для получения дополнительной информации о неявном расширении, смотрите Совместимые Размеры Массивов для Основных Операций (MATLAB). Для генерации кода, чтобы достигнуть неявного расширения, bsxfun
использования.
Массивы графического процессора
MATLAB Coder™ не поддерживает массивы графического процессора. Однако, если у вас есть GPU Coder™, можно сгенерировать код CUDA® MEX, который берет входные параметры графического процессора массивов.
calendarDuration
массивы
Java®
Контейнеры Map
расписания, которые имеют datetime
векторы как времена строки
объекты временных рядов
try
/catch
операторы
Валидация аргумента функции
Этот список не является исчерпывающим. Чтобы видеть, поддерживается ли функция для генерации кода, смотрите Функции MATLAB Та Генерация кода Поддержки.