生成される識別子のカスタマイズ
Embedded Coder® がある場合、MATLAB® コードから生成される C/C++ コードに含まれる識別子をカスタマイズできます。カスタマイズする識別子の種類に応じて、それぞれに該当する識別子形式パラメーターを、生成される識別子の形式を指定するマクロに設定します。マクロには以下を含めることができます。
有効な C 言語または C++ 言語の識別子 (a ~ z、A ~ Z、_、0 ~ 9)。
次の表に示すトークン。
$Mは必須です。トークン 説明 $Mコード ジェネレーターは名前の競合を回避するために名前マングリング テキストを挿入します。
必須。
$Nコード ジェネレーターは識別子を生成するオブジェクト (グローバル変数、グローバルなタイプ、ローカル関数、ローカルな一時変数、または定数マクロ) の名前を挿入します。生成コードの可読性が高まります。
必須。
$Rコード ジェネレーターはルート プロジェクト名を識別子に挿入し、サポートされていない文字をアンダースコア (_) 文字に置き換えます。
MATLAB Coder アプリを使用した識別子のカスタマイズ
[ビルド タイプ] を次のいずれかに設定します。
スタティック ライブラリダイナミック ライブラリ実行可能ファイル
[設定] をクリックします。
[コード外観] タブの [識別子の形式] で、カスタマイズする識別子の種類ごとにマクロを入力します。
パラメーター 既定のマクロ グローバル変数 $M$Nグローバルなタイプ $M$Nグローバルなタイプのフィールド名 $M$Nローカル関数 $M$Nローカルな一時変数 $M$N定数のマクロ $M$NEMX 配列タイプ emxArray_$M$NEMX 配列ユーティリティ関数 emx$M$N
たとえば、[グローバル変数] の値が 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'CustomSymbolStrEMXArrayEMX 配列タイプ 'emxArray_$M$N'CustomSymbolStrEMXArrayFcnEMX 配列ユーティリティ関数 'emx$M$N'以下に例を示します。
cfg.CustomSymbolStrGlobalVar = 'glob_$M$N';
g という名前のグローバル変数で、名前マングリングが必要ない場合、生成される識別子は glob_g になります。名前マングリングが必要な場合は、生成される識別子に名前マングリング テキストが含まれます。