Main Content

予約キーワード

ジェネレーターのキーワードは内部使用のために予約されています。これらをモデル内で識別子または関数名として使用しないでください。C の予約キーワードをモデル内で識別子または関数名として使用することも避けてください。予約キーワードがモデルに含まれている場合、コード生成は完了せず、エラー メッセージが表示されます。このエラーに対処するには、予約されていない識別子または名前を使用するようにモデルを変更します。

コード ジェネレーターを使用して C++ コードを生成する場合は、モデルにコード生成用の予約キーワードC++ の予約キーワードを含めないでください。

メモ

Simulink® 環境で追加の予約識別子を登録できます。詳細については、生成される識別子の予約名を指定するを参照してください。

C の予約キーワード

autodoubleintstruct
breakelselongswitch
caseenumregistertypedef
charexternreturnunion
constfloatshortunsigned
continueforsignedvoid
defaultgotosizeofvolatile
doifstaticwhile

C++ の予約キーワード

catchfriendprotectedtry
classinlinepublictypeid
const_castmutablereinterpret_casttypename
deletenamespacestatic_castusing
dynamic_castnewtemplatevirtual
explicitoperatorthiswchar_t
exportprivatethrow 

コード生成用の予約キーワード

absint8_TMAX_uint8_T*rtInf
asmint16_TMAX_uint16_T*rtMinusInf
boolint32_TMAX_uint32_T*rtNaN
boolean_Tint64_TMAX_uint64_TSeedFileBuffer
byte_TINTEGER_CODEMIN_int8_T*SeedFileBufferLen
char_TLINK_DATA_BUFFER_SIZEMIN_int16_T*single
cint8_TLINK_DATA_STREAMMIN_int32_T*TID01EQ
cint16_TlocalBMIN_int64_Ttime_T
cint32_TlocalCMODELtrue
creal_TlocalDWorkMTuint_T
creal32_TlocalPNCSTATESuint8_T
creal64_TlocalXNULLuint16_T
cuint8_TlocalXdisNUMSTuint32_T
cuint16_TlocalXdotpointer_Tuint64_T
cuint32_TlocalZCEPROFILING_ENABLED UNUSED_PARAMETER
ERTlocalZCSVPROFILING_NUM_SAMPLESUSE_RTMODEL
falsematrixreal_TVCAST_FLUSH_DATA
fortranMAX_int8_T*real32_Tvector
HAVESTDIOMAX_int16_T*real64_T 
id_tMAX_int32_T*RT 
int_TMAX_int64_TRT_MALLOC 
*置換識別子を指定する場合は予約されません。

コード生成コード置換ライブラリのキーワード

開発環境に対応したコード置換ライブラリの予約キーワードのリストは、どのライブラリが登録されているかによって異なります。使用可能なコード置換ライブラリのリストは、インストールされている他の製品 (たとえば、ターゲット製品) によって、またはカスタム コード置換ライブラリを作成し登録するために Embedded Coder® を使用したかによって異なります。

現在お使いの環境に登録されているライブラリに対応した予約キーワードのリストを生成するには、次の MATLAB® 関数を使用します。

lib_ids = RTW.TargetRegistry.getInstance.getTflReservedIdentifiers()

この関数は、ライブラリのキーワードの配列を返します。入力引数の指定はオプションです。

メモ

お使いの環境で現在登録されているライブラリをリストするには、MATLAB コマンド crviewer を使用します。

コード生成に使用する特定のライブラリについて、予約されているキーワードのリストを生成するには、この関数を呼び出し、[コンフィギュレーション パラメーター] ダイアログ ボックスの [コード生成][インターフェイス] ペインにある [コード置換ライブラリ] メニューに表示されるライブラリの名前を渡します。次に例を示します。

lib_ids = RTW.TargetRegistry.getInstance.getTflReservedIdentifiers('GNU C99 extensions')

関数出力の一部の例を次に示します。

>> lib_ids = ...
   RTW.TargetRegistry.getInstance.getTflReservedIdentifiers('GNU C99 extensions')

lib_ids = 

    'exp10'
    'exp10f'
    'acosf'
    'acoshf'
    'asinf'
    'asinhf'
    'atanf'
    'atanhf'
...
    'rt_lu_cplx'
    'rt_lu_cplx_sgl'
    'rt_lu_real'
    'rt_lu_real_sgl'
    'rt_mod_boolean'
    'rt_rem_boolean'
    'strcpy'
    'utAssert'

メモ

返されるキーワードの中には、'rt_atan2$N' のように接尾辞 $N とともに表示されるものがあります。$N は、非有限数がサポートされている場合にのみ接尾辞 _snf に展開されます。たとえば、'rt_atan2$N' は、非有限数がサポートされている場合は 'rt_atan2_snf' になり、非有限数がサポートされていない場合は 'rt_atan2' になります。念のため、両方の形式のキーワードを予約済みとして処理してください。