Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

コード生成のための変数の定義

MATLAB® 言語では、実行時に変数のプロパティを動的に変更することができるので、同じ変数を使って任意のクラス、サイズ、実数/複素数の値を格納できます。たとえば、MATLAB では次のようなコードが機能します。

function x = foo(c) %#codegen
if(c>0)
  x = 0;
else
  x = [1 2 3];
end
disp(x);
end 

しかし、C 言語のような静的に型を使用する言語では、コンパイル時に変数のプロパティを判定できなければなりません。そのため、C/C++ コードを生成するときに、MATLAB ソース コード内の変数のクラス、サイズ、実数/複素数を明示的に定義してからそれらを使用しなければなりません。たとえば、上記のソース コードは、x の定義を加えて次のように書き直します。

function x = foo(c) %#codegen
x = zeros(1,3);
if(c>0)
  x = 0;
else
  x = [1 2 3];
end
disp(x);
end 

詳細については、C/C++ コード生成のための変数定義のベスト プラクティスを参照してください。