Если у вас есть Embedded Coder®, можно настроить идентификаторы в коде C/C + +, сгенерированном из MATLAB® код. Для каждого типа идентификатора, который вы хотите настроить, установите соответствующий параметр формата идентификатора на макрос, который задает формат сгенерированных идентификаторов. Макрос может включать:
Действительные идентификаторы языка C или C++ (a-z, A-Z, _, 0-9).
Лексемы, перечисленные в следующей таблице. $M обязательно.
| Лексема | Описание |
|---|---|
$M | Генератор кода вставляет текст управления именами, чтобы избежать конфликтов имен. Обязательно. |
$N | Генератор кода вставляет имя объекта (глобальная переменная, глобальный тип, локальная функция, локальная временная переменная или постоянный макрос), для которого генерируется идентификатор. Улучшает читаемость сгенерированного кода. Обязательно. |
$R | Генератор кода вставляет имя корневого проекта в идентификатор, заменяя неподдерживаемые символы символом подчеркивания (_). |
На странице Generate Code, чтобы открыть диалоговое окно Generate, щелкните стрелу Generate.![]()
Установите Build type в одно из следующих значений:
Source Code
Static Library
Dynamic Library
Executable
Нажмите More Settings.
На вкладке 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 Types | emxArray_$M$N |
| EMX Array Utility Functions | emx$M$N |
Например, предположим, что Global variables имеет значение glob_$M$N. Для глобальной переменной с именем g, когда управление именами не требуется, сгенерированный идентификатор glob_g. Если требуется управление именем, сгенерированный идентификатор включает в себя текст управления именем.
Создайте объект строения кода для библиотеки или исполняемой программы. Для примера:
cfg = coder.config('lib','ecoder',true);
Для каждого типа идентификатора, который вы хотите настроить, укажите макрос как вектор символов.
| Параметр | Описание | Макрос по умолчанию |
|---|---|---|
CustomSymbolStrGlobalVar | Глобальные переменные | '$M$N' |
CustomSymbolStrType | Глобальные типы | '$M$N' |
CustomSymbolStrField | Имя поля глобальных типов | '$M$N' |
CustomSymbolStrFcn | Локальные функции | '$M$N' |
CustomSymbolStrTmpVar | Локальные временные переменные | '$M$N' |
CustomSymbolStrMacro | Постоянные макросы | '$M$N' |
CustomSymbolStrEMXArray | Типы массивов EMX | 'emxArray_$M$N' |
CustomSymbolStrEMXArrayFcn | Служебные функции Массив | 'emx$M$N' |
Для примера:
cfg.CustomSymbolStrGlobalVar = 'glob_$M$N';
Для глобальной переменной с именем g, когда управление именами не требуется, сгенерированный идентификатор glob_g. Если требуется управление именем, сгенерированный идентификатор включает в себя текст управления именем.