主要内容

潜在差异报告

从MATLAB生成高效的C/ c++代码®代码有时会导致生成的代码和MATLAB代码之间的行为差异.运行程序时,运行时错误检查可以检测到其中一些差异。默认情况下,运行时错误检查对MEX代码启用,对独立的C/ c++代码禁用。为了帮助您在部署代码之前识别和处理差异,代码生成器将差异的一个子集报告为潜在的差异.电位差是在运行时仅在某些条件下发生的差。

处理潜在差异信息

如果代码生成器检测到潜在的差异,它将在潜在的差异报表TAB或者是MATLAB编码器™应用程序.若要突出显示与该消息对应的MATLAB代码,请单击该消息。

存在潜在差异消息并不一定意味着在运行生成的代码时将出现差异。要确定潜在差异是否会影响您的应用程序:

  • 分析MATLAB代码在应用程序数据范围内的行为。

  • 测试从MATLAB代码生成的MEX函数。使用应用程序使用的数据范围。如果出现差异,则MEX函数将报错。

如果您的分析或测试证实了报告的差异,请考虑修改您的代码。一些潜在差异消息提供了解决方案。有关一些潜在差异消息的其他信息,请参见潜在差异信息.即使您修改了代码以防止在运行时发生差异,代码生成器仍然可能报告潜在的差异。

代码生成器检测到的潜在差异集是MEX函数报告为错误的差异的子集。在整个应用程序数据范围内测试MEX函数是一种最佳实践。

禁用和启用潜在差异报告

默认情况下,潜在差异报告是启用的:

  • 代码生成codegen命令

  • 检查运行时问题踏进MATLAB编码器应用程序

禁用潜在差异报告:

  • 在代码配置对象中,设置ReportPotentialDifferences

  • MATLAB编码器应用程序,在调试设置,清除用MATLAB报告差异复选框。

类型的潜在差异报告默认为禁用生成代码步骤和代码生成报告中的MATLAB编码器要启用潜在差异报告,请在调试设置,选择用MATLAB报告差异复选框。

相关的话题