文档

代码生成的函数调用解析

从MATLAB®函数,可以调用局部函数、支持的工具箱函数和其他MATLAB函数。万博1manbetxMATLAB解析代码生成的函数名如下:

关于解决函数调用的要点

该图说明了MATLAB如何解决代码生成的函数调用的关键点:

  • 搜索两条路径,代码生成路径和MATLAB路径

    看到编译路径搜索顺序

  • 尝试编译函数,除非代码生成器确定不应该编译它们,或者您显式地将它们声明为外部函数。

    如果代码生成不支持MATLAB函数,则可以使用构造将其声万博1manbetx明为外部函数coder.extrinsic,详见声明MATLAB函数为外部函数.在模拟过程中,代码生成器为调用外部函数生成代码,但不为函数生成内部代码。因此,仿真只能在安装了MATLAB软件的平台上运行。在独立代码生成过程中,代码生成器试图确定外部函数是否会影响调用它的函数的输出—例如通过返回mxArrays到输出变量。如果输出不变,代码生成将继续进行,但外部函数将从生成的代码中排除。否则,会出现编译错误。

    代码生成器检测对许多常见可视化函数的调用,例如情节disp,数字.该软件将这些函数视为外部函数,但您不必使用coder.extrinsic函数。

  • 中描述的优先级规则解析文件类型基于代码生成路径的文件类型解析

编译路径搜索顺序

在代码生成过程中,函数调用在两条路径上解析:

  1. 代码生成路径

    MATLAB在代码生成过程中首先搜索这条路径。代码生成路径包含代码生成所支持的工具箱函数。万博1manbetx

  2. MATLAB路径

    如果函数不在代码生成路径上,MATLAB搜索此路径。

MATLAB在搜索每个路径时应用相同的调度程序规则功能优先级顺序(MATLAB))。

何时使用代码生成路径

使用代码生成路径覆盖具有自定义版本的MATLAB函数。代码生成路径上的文件遮蔽MATLAB路径上同名的文件。

这个话题有帮助吗?