主要内容

结构生成的示例C / c++的主要功能

当您构建一个应用程序,该应用程序使用生成的C / c++代码,您必须提供一个C / c++的主要功能,调用生成的代码。

默认情况下,代码生成的C / c++源代码,静态库,动态库和可执行文件,MATLAB®编码器™生成一个示例C / c++的主要功能。这个函数是一个模板,可以帮助您生成的C / c++代码合并到您的应用程序。这个例子主要功能声明并初始化数据,包括动态分配数据。它调用入口点函数但不使用入口点函数返回的值。用例主要功能,主要来源,头文件复制到一个位置以外的建立文件夹,然后修改文件在新的位置来满足应用程序的需求。

MATLAB编码器生成源代码和示例主函数的头文件例子建立文件夹的子文件夹。对于C代码生成,它生成的文件cmain.h。对于c++代码生成,它生成的文件main.cppmain.h

文件的内容cmain.cpp

例如主要来源文件cmain.cpp,MATLAB编码器生成以下部分:

默认情况下,MATLAB编码器还生成注释的示例主要源文件可以帮助你修改这个示例主要功能在应用程序中使用。

包含文件

本节包含调用所需的头文件代码中不是主要来源文件示例。如果你调用外部函数当你修改这个示例主要源文件,包括任何其他所需的头文件。

函数声明

本节中声明参数初始化和入口点函数的函数原型中定义的主要来源文件示例。修改函数原型匹配修改你的函数定义。宣布新定义的函数的函数原型主要来源文件示例。

参数初始化函数

本节定义了一个初始化函数入口点函数的每个数据类型作为参数使用。参数初始化函数初始化参数默认值的大小和数据的值为零。然后返回初始化数据的函数。改变这些大小和数据值来满足应用程序的需求。

的参数与尺寸大小< dimSizes >MATLAB和C / c++数据类型< baseType >这个例子主要源文件定义了一个初始化函数的名称argInit_ < dimSizes > _ < baseType >。例如,MATLAB的5-by-5数组数据类型双,主要来源文件示例定义了参数初始化函数argInit_5x5_real_T

MATLAB编码器改变参数初始化函数的名称如下:

  • 如果适应任何尺寸,MATLAB编码器指定这些尺寸的大小d <最大尺寸>,在那里<最大尺寸>就是尺寸的最大大小。例如,对于一个数组与MATLAB类型的数据双静态大小的第一个维度2和第二个维度,可以大小不同,主要来源文件示例定义了参数初始化函数argInit_2xd10_real_T

  • 如果任何维度是无限的,MATLAB编码器指定这些尺寸的大小无限

  • 如果初始化函数的返回类型是一个emxArray,MATLAB编码器定义函数返回一个指针emxArray

  • 如果初始化函数名的长度超过了最大数量的字符设置函数名的配置设置,MATLAB编码器加一个标识符的函数名的前面。MATLAB编码器然后截断函数名的最大允许的字符数标识符长度。

    请注意

    默认情况下,生成的最大字符数允许标识符是31岁。指定值为最大标识符长度设置使用MATLAB编码器应用程序,选择最大标识符长度价值代码的外观代码生成的选项卡设置。指定最大的值集标识符使用命令行界面,改变的价值MaxIdLength配置对象设置。

入口点函数

本节定义了一个函数为每个MATLAB入口点函数。对于一个MATLAB函数foo.m这个例子主要源文件定义了一个入口点函数main_foo。这个函数创建的变量和调用数据初始化函数C / c++源函数foo.cfoo.cpp需要。它调用C / c++源函数但不返回结果。修改main_foo这需要输入并返回输出根据您的应用程序。

主要功能

本节定义了一个主要函数如下:

  • 如果你的输出语言是C,它声明和命名的变量命令行参数个数argv但他们空虚。如果你的输出语言c++,生成的示例主要声明,但没有名称、变量命令行参数个数argv

  • 每个入口点函数调用一次。

  • 调用终止函数foo_terminate命名的,这是第一个MATLAB入口点函数喷火宣布为代码生成。调用终止函数只有一次,即使你有多个入口点函数调用的函数主要

  • 返回零。

默认情况下,这个例子主要函数不能调用初始化函数foo_initialize。代码生成器包括开始时调用初始化函数生成的C / c++的入口点函数。生成的代码还包括检查确保自动调用初始化函数只有一次,即使有多个入口点函数。

你可以选择不包括调用初始化函数生成的入口点函数。要做这个选择,做以下之一:

如果你做出这样的选择,例子主要功能包括一个调用初始化函数foo_initialize

看到使用生成的初始化和终止功能

修改函数主要,包括输入和输出主要的入口点函数,以满足应用程序的需求。

文件的内容main.h

例如主要的头文件main.h,MATLAB编码器生成以下:

默认情况下,MATLAB编码器还生成注释main.h可以帮助你修改这个示例主要功能在应用程序中使用。

包括警卫

main.h使用一个包括警卫来防止文件的内容包括很多次了。包括警卫包含在一个包含文件和函数声明#如果未定义构造。

包含文件

main.h包括调用所需的头文件代码中没有定义它。

函数声明

main.h声明了函数原型的主要功能是主要的源文件中定义的例子cmain.cpp

相关的例子

更多关于