最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

潜在的な相違点のレポート

MATLAB® コードから効率の良い C/C++ コードを生成すると、生成されたコードと MATLAB コード間の動作に違いが生じる場合があります。プログラムを実行すると、実行時エラー チェックで次の相違点が検出される可能性があります。既定では、実行時エラー チェックは MEX コードに対して有効化され、スタンドアロン C/C++ コードに対しては無効化されています。コードを配布する前に相違点を識別して解決できるように、コード ジェネレーターは、"潜在的な相違" として相違点のサブセットを報告します。潜在的な相違とは、特定の状況にある場合にのみ実行時に生じる違いです。

潜在的な相違メッセージの解決

コード ジェネレーターで潜在的な相違が検出されると、レポートまたは MATLAB Coder™ アプリの [潜在的な相違] タブに相違点を示すメッセージが表示されます。メッセージに対応する MATLAB コードを強調表示するには、メッセージをクリックします。

潜在的な相違メッセージが示されても、必ずしも生成されたコードの実行時に相違が生じるわけではありません。潜在的な相違がアプリケーションに影響を与えるかどうか判断するには、次を行います。

  • アプリケーションのデータの範囲に対して MATLAB コードの動作を解析します。

  • MATLAB コードから生成された MEX 関数をテストします。アプリケーションで使用するデータの範囲を使用します。相違が生じた場合、MEX 関数でエラーが報告されます。

報告された相違が解析やテストで確認されたら、コードの変更を検討してください。潜在的な相違メッセージには、回避方法が示されるものがあります。潜在的な相違メッセージの詳細については、潜在的な相違メッセージを参照してください。コードを変更して実行時に相違が生じないようにしても、コード ジェネレーターで潜在的な相違が報告される場合があります。

コード ジェネレーターで検出される一連の潜在的な相違は、MEX 関数でエラーとして報告される相違のサブセットです。アプリケーション データの全範囲に対して MEX 関数をテストすることをお勧めします。

潜在的な相違点のレポートの無効化と有効化

既定では、潜在的な相違のレポートは次に対して有効化されています。

  • codegen コマンドを使用したコードの生成

  • MATLAB Coder アプリの [実行時の問題の確認] 手順

潜在的な相違のレポートを無効にするには、次を行います。

  • コード構成オブジェクトで、ReportPotentialDifferencesfalse に設定します。

  • MATLAB Coder アプリの [デバッグ] 設定で、[MATLAB との相違点をレポート] チェック ボックスをオフにします。

既定では、潜在的な相違のレポートは [コード生成] 手順および MATLAB Coder アプリのコード生成レポートで無効化されています。潜在的な相違のレポートを有効にするには、[デバッグ] 設定で、[MATLAB との相違点をレポート] チェック ボックスを選択します。

関連するトピック