Управляйте встраиванием определенной функции в сгенерированный код
coder.inline('always')
принудительно вводит текущую функцию в сгенерированный код. Поместите coder.inline
директива внутри функции, которую вы хотите встроить. Генератор кода не строит функции точки входа и рекурсивные функции. Кроме того, генератор кода не встраивает функции в parfor
циклы или встроенные функции, вызываемые из parfor
циклы.
coder.inline('never')
предотвращает встраивание текущей функции в сгенерированный код. Предотвратите встраивание, когда хотите упростить отображение между MATLAB® исходный код и сгенерированный код.
Примечание
Если вы используете codegen
или fiaccel
(Fixed-Point Designer), можно отключить инкрустацию для всех функций при помощи -O disable:inline
опция.
Если вы генерируете код C/C + + при помощи codegen
команда или приложение MATLAB Coder™, вы можете иметь различные требования скорости и читаемости для кода, сгенерированного для функций, которые вы пишете, и кода, сгенерированного для MathWorks® функций. Некоторые дополнительные глобальные настройки позволяют вам отдельно контролировать поведение встраивания для этих двух частей сгенерированного кода основы и в контур между ними. См. Раздел «Управление встраиванием для точной настройки эффективности и читаемости сгенерированного кода».
coder.inline('default')
инструктирует генератор кода использовать внутреннюю эвристику, чтобы определить, вводить ли текущую функцию в строку. Обычно эвристика производит высоко оптимизированный код. Использование coder.inline
явным образом в функциях MATLAB только тогда, когда необходимо настроить эти оптимизации.