Настройте сгенерированные идентификаторы

Если у вас есть Embedded Coder®, можно настроить идентификаторы в коде C/C++, сгенерированном из кода MATLAB®. Для каждого вида идентификатора, который вы хотите настроить, установите соответствующий параметр формата идентификатора на макрос, который задает формат сгенерированных идентификаторов. Макрос может включать:

  • Допустимый C или идентификаторы языка C++ (a-z, A-Z, _, 0–9).

  • Лексемы перечислены в следующей таблице. $M требуется.

    ЛексемаОписание
    $M

    Генератор кода вставляет текст искажения имени, чтобы не называть столкновения.

    Необходимый.

    $N

    Генератор кода вставляет имя объекта (глобальная переменная, глобальный тип, локальная функция, локальная временная переменная или постоянный макрос), для которого сгенерирован идентификатор.

    Улучшает удобочитаемость сгенерированного кода.

    $R

    Генератор кода вставляет корневое название проекта в идентификатор, заменяя неподдерживаемые символы на подчеркивание (_) символ.

Настройте идентификаторы при помощи приложения MATLAB Coder

  1. На странице Generate Code, чтобы открыть диалоговое окно Generate, кликают по стрелке Generate.

  2. Установите Build type на одно из следующего:

    • Source Code

    • Static Library

    • Dynamic Library

    • Executable

  3. Нажмите More Settings.

  4. На вкладке Code Appearance, под Identifier Format, для каждого вида идентификатора, который вы хотите настроить, вводят макрос.

    ПараметрМакрос по умолчанию
    Global variables$M$N
    Global types$M$N
    Field name of global types$M$N
    Local functions$M$N
    Local temporary variables$M$N
    Constant macros$M$N
    EMX Array TypesemxArray_$M$N
    EMX Array Utility Functionsemx$M$N

Например, предположите, что Global variables имеет значение glob_$M$N. Для глобальной переменной под названием g, когда искажение имени не требуется, сгенерированным идентификатором является glob_g. Если искажение имени требуется, сгенерированный идентификатор включает текст искажения имени.

Настройте сгенерированные идентификаторы при помощи интерфейса командной строки

  1. Создайте объект настройки кода для библиотечной или исполняемой программы. Например:

    cfg = coder.config('lib','ecoder',true);
    

  2. Для каждого вида идентификатора, который вы хотите настроить, задайте макрос как вектор символов.

    ПараметрОписание Макрос по умолчанию
    CustomSymbolStrGlobalVarГлобальные переменные'$M$N'
    CustomSymbolStrTypeГлобальные типы'$M$N'
    CustomSymbolStrFieldИмя поля глобальных типов'$M$N'
    CustomSymbolStrFcnLocalfunctions'$M$N'
    CustomSymbolStrTmpVarЛокальные временные переменные'$M$N'
    CustomSymbolStrMacroПостоянные макросы'$M$N'
    CustomSymbolStrEMXArrayТипы массива EMX'emxArray_$M$N'
    CustomSymbolStrEMXArrayFcnСлужебные функции EMX массивов'emx$M$N'

    Например:

    cfg.CustomSymbolStrGlobalVar = 'glob_$M$N';

Для глобальной переменной под названием g, когда искажение имени не требуется, сгенерированным идентификатором является glob_g. Если искажение имени требуется, сгенерированный идентификатор включает текст искажения имени.

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

Похожие темы