代码生成模板(CGT)文件定义了生成的代码中的部分,您可以使用注释和令牌自定义这些部分。使用代码生成模板(CGT)文件从MATLAB生成C和c++代码®代码,您可以为生成的代码指定自定义文件标题和函数标题。文件横幅是生成文件的头和尾部分中的注释部分。函数条是生成代码中每个函数的注释部分。您还可以在代码段之前自定义注释。使用这些横幅:
添加公司版权声明。
为配置管理系统指定一个特殊的版本符号。
删除时间戳。
向生成的文件中添加其他自定义信息。
有关创建、自定义和使用CGT文件的信息,请参见为C/ c++代码生成自定义文件和函数横幅.
您可以根据默认的CGT文件创建自定义模板,matlabcoder_default_template.cgt
,在
文件夹中。matlabroot
/ /工具箱/编码器/ matlabcoder /模板
请注意
如果选择不为生成的代码定制横幅,则将使用默认模板生成代码。
CGT文件由13个可选部分组成。
包含用于生成自定义文件横幅的注释和标记。
包含用于生成自定义函数横幅的注释和标记。
包含用于为共享实用程序函数生成自定义横幅的注释和标记。
包含用于生成自定义预告片横幅的注释。
包含用于为“包含文件”部分生成自定义横幅的注释。
包含用于为类型定义节生成自定义横幅的注释。
包含用于为命名常量节生成自定义横幅的注释。
包含用于为变量声明部分生成自定义横幅的注释。
包含用于为变量定义部分生成自定义横幅的注释。
包含用于为函数声明部分生成自定义横幅的注释。
包含用于为函数定义部分生成自定义横幅的注释。
包含用于为自定义源代码部分生成自定义横幅的注释。
包含用于为自定义标题代码节生成自定义横幅的注释。
每个CGT文件节都由打开和关闭标记定义。
CGT档案组 | 开放标签 | 结束标记 |
---|---|---|
文件横幅 | < FileBanner > |
< / FileBanner > |
功能横幅部分 | < FunctionBanner > |
< / FunctionBanner > |
共享实用功能横幅 | < SharedUtilityBanner > |
< / SharedUtilityBanner > |
档案拖车组 | < FileTrailer > |
< / FileTrailer > |
包含文件横幅 | < IncludeFilesBanner > |
< / IncludeFilesBanner > |
类型定义 | < TypeDefinitionsBanner > |
< / TypeDefinitionsBanner > |
命名常量 | < NamedConstantsBanner > |
< / NamedConstantsBanner > |
变量声明 | < VariableDeclarationsBanner > |
< / VariableDeclarationsBanner > |
变量定义 | < VariableDefinitionsBanner > |
< / VariableDefinitionsBanner > |
函数声明 | < FunctionDeclarationsBanner > |
< / FunctionDeclarationsBanner > |
函数定义 | < FunctionDefinitionsBanner > |
< / FunctionDefinitionsBanner > |
自定义源代码 | < CustomSourceCodeBanner > |
< / CustomSourceCodeBanner > |
自定义报头代码 | < CustomHeaderCodeBanner > |
< / CustomHeaderCodeBanner > |
您可以通过在每个部分的开始和结束标记之间包含标记和注释来定制您的横幅。令牌在生成的代码中被替换为值。以下规则适用于CGT文件中的令牌:
每行只能有一个令牌。
令牌值不能包含用于格式化的“\t”。
请注意
在横幅的内容中,C注释指示符'/*'或'*/'可能会在生成的代码中引入错误。
打开标记包括标记属性。属性的值用双引号括起来。打开标记可用的属性有:
宽度
:指定生成代码中文件或函数标题注释的宽度。默认值为80。
风格
:指定生成代码中文件或函数标题注释的边界。
打开标记的语法是:
<OpenTag
风格=“style_value”
宽度=“num_width”
>
banner样式有五个选项。的CommentStyle
而且TargetLang
配置对象属性决定使用C或c++的注释样式。属性的内置样式选项风格
属性是:
经典
使用C风格注释
/*单行注释*/ /* *多行注释*第二行* /
使用c++风格的注释
//单行注释// //多行注释//第二行//
盒子
使用C风格注释
/**********************************************************/ /*横幅的内容*/ /**********************************************************/
使用c++风格的注释
//////////////////////////////////////////////////////////// //横幅的内容// ////////////////////////////////////////////////////////////
open_box
使用C风格注释
/********************************************************** *横幅的内容**********************************************************/
使用c++风格的注释
//////////////////////////////////////////////////////////// //横幅的内容////////////////////////////////////////////////////////////
doxygen
使用C风格注释
/**单行注释*/ /** *多行注释*第二行* /
使用c++风格的注释
///单行注释/// ///多行注释///第二行///
doxygen_qt
使用C风格注释
/ * !单行注释* / / * !*多行注释*第二行* /
使用c++风格的注释
/ / !单行注释/ / !/ / !多行注释/ / !第二行/ / !
此部分包含用于在生成的C和c++代码之前生成自定义文件横幅的注释和令牌。如果从CGT文件中省略文件横幅部分,代码生成器不会在生成的代码中生成文件横幅。默认CGT文件中提供的文件横幅部分是:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%自定义文件横幅部分(可选)%%通过使用自定义令牌或以下%%预定义令牌自定义文件横幅:%%%, % , % %%%% , % , % %%%%您也可以在以下所有部分中使用“自定义令牌”。有关更多详细信息,请参阅%%文档中心。%% File: % MATLABCoder version: % C/ c++源代码生成上:%
文件横幅生成令牌摘要
|
生成的文件名称(例如: |
|
生成文件的时间戳 |
|
版本的MATLAB编码器™ |
|
嵌入式编码器的版本® |
|
选定目标 |
|
输出类型(例如,lib、exe或dll) |
此部分包含用于在生成的C或c++函数之前生成自定义函数横幅的注释和标记。如果从CGT文件中省略函数横幅部分,则代码生成器不会生成函数横幅。默认CGT文件中提供的函数横幅部分是:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%自定义函数横幅部分(可选)%%通过使用以下预定义令牌自定义函数横幅:%%%, % , % %%%% , % %% % % 参数:% 返回类型:%
函数横幅生成令牌摘要
|
函数名称 |
|
关于函数的简短摘要 如果配置参数 |
|
MATLAB函数原型 函数原型仅在函数横幅中出现 |
|
函数参数列表 |
|
函数的返回类型 |
此部分包含用于在生成的C或c++共享实用程序函数之前生成自定义共享实用程序函数横幅的注释和令牌。如果从CGT文件中省略了共享实用程序函数横幅部分,代码生成器将不会生成共享实用程序函数横幅。默认CGT文件中提供的共享实用程序函数横幅部分是:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%自定义共享实用功能横幅部分(可选)%%通过使用以下%%预定义令牌自定义共享实用功能横幅:%%%, % %%%% , % %% 参数:% 返回类型:%
共享实用功能横幅生成令牌摘要
|
函数名称 |
|
关于函数的简短摘要 |
|
函数参数列表 |
|
函数的返回类型 |
文件预告部分包含用于在生成的C或c++代码之后生成自定义文件预告的注释。如果从CGT文件中省略了文件预告部分,代码生成器将不会生成文件预告。默认CGT文件中提供的文件拖车部分是:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 自定义文件拖车部分(可选)% %您可以使用任何预定义的标记用于文件的横幅% % < FileTrailer风格=“经典”>文件拖车% <文件名> (EOF) < / FileTrailer >
文件横幅的令牌可用于文件预告片。看到文件横幅生成令牌摘要.
包含文件横幅部分包含用于在生成的代码中的包含文件部分之前生成自定义横幅的注释。如果从CGT文件中省略了包含文件横幅节,代码生成器不会为此节生成横幅。默认CGT文件中提供的包含文件横幅部分是:
IncludeFiles
类型定义横幅节包含用于在生成的代码中的类型定义节之前生成自定义横幅的注释。如果从CGT文件中省略类型定义横幅节,代码生成器不会为此节生成横幅。默认CGT文件中提供的类型定义横幅部分是:
TypeDefinitionsBanner
命名常量横幅部分包含用于在生成的代码中命名常量部分之前生成自定义横幅的注释。如果从CGT文件中省略了命名常量横幅节,代码生成器不会为此节生成横幅。默认CGT文件中提供的命名常量横幅部分是:
NamedConstants
变量声明横幅部分包含用于在生成的代码中的变量声明部分之前生成自定义横幅的注释。如果从CGT文件中省略变量声明横幅部分,代码生成器不会为此部分生成横幅。默认CGT文件中提供的变量声明横幅部分是:
变量声明
变量定义横幅部分包含用于在生成的代码中的变量定义部分之前生成自定义横幅的注释。如果从CGT文件中省略变量定义横幅节,代码生成器不会为此节生成横幅。默认CGT文件中提供的变量定义横幅部分是:
变量定义
函数声明横幅部分包含用于在生成的代码中的函数声明部分之前生成自定义横幅的注释。如果从CGT文件中省略函数声明横幅节,代码生成器不会为此节生成横幅。默认CGT文件中提供的函数声明横幅部分是:
函数声明 functionDeclarationsBanner > .
函数定义横幅部分包含用于在生成的代码中的函数定义部分之前生成自定义横幅的注释。如果从CGT文件中省略函数定义横幅节,代码生成器不会为此节生成横幅。默认CGT文件中提供的函数定义横幅部分是:
自定义源代码横幅部分包含用于在生成的代码中的自定义源代码部分之前生成自定义横幅的注释。如果从CGT文件中省略了自定义源代码横幅部分,则代码生成器不会为此部分生成横幅。默认CGT文件中提供的自定义源代码横幅部分是:
自定义源代码
自定义头码横幅节包含用于生成自定义横幅的注释,该注释位于所生成代码中的自定义头码节之前。如果从CGT文件中省略了自定义标题代码横幅部分,代码生成器不会为此部分生成横幅。缺省CGT文件中提供的自定义头代码横幅部分是:
自定义头码