Включить файл заголовка в созданный код
coder.cinclude( включает в себя файл заголовка в сгенерированном исходном коде C/C + +.headerfile)
MATLAB ® Coder™ генерирует инструкцию include в исходных файлах C/C + +, которые генерируются из кода MATLAB, содержащего coder.cinclude звоните.
В модели Simulink ®, когда coder.cinclude вызов появляется в блоке MATLAB Function, генератор кода помещает оператор include в файл заголовка модели.
Примечание
Разместить coder.cinclude позвоните как можно ближе к coder.ceval вызов, для которого требуется файл заголовка.
coder.cinclude( использует headerfile,'InAllSourceFiles',allfiles)allfiles для определения необходимости включения файла заголовка почти во все исходные файлы C/C + +.
Если allfiles является trueКодер MATLAB генерирует оператор include почти во всех исходных файлах C/C + +, за исключением некоторых файлов утилит. Это поведение coder.cinclude поведение R2016a и более ранних версий. Наличие оператора include в этих дополнительных файлах может увеличить время компиляции и сделать созданный код менее читаемым. Этот параметр используется только в том случае, если код зависит от устаревшего поведения. Если allfiles является false, поведение совпадает с поведением coder.cinclude(headerfile).
В функциональном блоке MATLAB coder.cinclude(headerfile,'InAllSourceFiles', allfiles) является таким же, как coder.cinclude(headerfile).
Не звонить coder.cinclude условные конструкции внутреннего времени выполнения, такие как if заявления, switch заявления, while-циклы, и for-контуры. Вы можете позвонить coder.cinclude внутри условных операторов compile-time, таких как coder.target. Например:
... if ~coder.target('MATLAB') coder.cinclude('foo.h'); coder.ceval('foo'); end ...
Перед coder.ceval вызов, вызов coder.cinclude включить файл заголовка, требуемый внешней функцией, coder.ceval вызовы.
Внешние операторы включения в сгенерированном коде C/C + + могут увеличить время компиляции и уменьшить читаемость кода. Чтобы избежать посторонних операторов включения в код, созданный кодером MATLAB, выполните следующие рекомендации:
Разместить coder.cinclude позвоните как можно ближе к coder.ceval вызов, для которого требуется файл заголовка.
Не устанавливать allfiles кому true.
Для блока MATLAB Function генератор кода генерирует инструкцию include в файле заголовка модели.
В R2016a и более ранних версиях, для любых coder.cinclude вызов, MATLAB Coder включал файл заголовка почти во все сгенерированные исходные файлы C/C + +, за исключением некоторых файлов утилит. Если у вас есть код, который зависит от этого унаследованного поведения, можно сохранить унаследованное поведение, используя следующий синтаксис:
coder.cinclude(headerfile,'InAllSourceFiles',true)
coder.ceval | coder.target | coder.reservedName (кодер MATLAB)