主要内容

为什么要测试MEX功能MATLAB?

在为MATLAB生成C/ c++代码之前®代码,这是一个最佳实践,测试MEX函数,以验证它提供相同的功能作为原始的MATLAB代码。要进行此测试,请使用与运行原始MATLAB代码相同的输入运行MEX函数并比较结果。控件测试MEX函数的详细信息MATLAB编码器™应用程序,请参阅通过使用应用程序检查运行时问题而且在MATLAB编码器App中验证MEX函数.有关如何在命令行上测试MEX函数的详细信息,请参见通过命令行验证MEX功能

在生成代码之前在MATLAB中运行MEX函数使您能够检测和修复难以在生成的代码中诊断的运行时错误。如果在MATLAB函数中遇到运行时错误,请在生成代码之前修复它们。看到修复在代码生成时检测到的错误而且调试运行时错误

当您在MATLAB中运行MEX函数时,默认情况下,执行以下运行时检查:

  • 内存完整性检查。这些检查执行数组边界检查、维数检查,并检测为MATLAB函数生成的代码中违反内存完整性的情况。如果检测到违规,MATLAB将停止执行并提供诊断消息。

  • 在为MATLAB函数生成的代码中检查响应性。这些检查支持对Ctrl+C断点在为MATLAB函数生成的代码中,允许您使用Ctrl+C

有关更多信息,请参见控制运行时检查