MATLAB ヘルプ センター
コード生成において、構造体、サブ構造体またはフィールドに値を代入する際に、以下のガイドラインを使用してください。
フィールド プロパティは、構造体から構造体への代入において一貫性がなければならない
ある構造体を別の構造体に代入する
それぞれの構造体は、フィールドの数、型、サイズを同じに定義する
ある構造体を別の構造体のサブ構造体に代入する (またはその逆)
構造体は、フィールドの数、型、サイズをサブ構造体と同じに定義する
ある構造体の要素を別の構造体の要素に代入する
要素は同じデータ型とサイズであること。
定数フィールドをもつ構造体には制御フロー構造内でフィールド値を代入しない
次のコードでは、コード ジェネレーターは構造体フィールド s.a および s.b が定数であると認識します。
s.a
s.b
function y = mystruct() s.a = 3; s.b = 5; y = zeros(s.a,s.b);
構造体のフィールドが制御フロー構造内で代入された場合、コード ジェネレーターは s.a および s.b が定数であると認識しません。以下のコードについて考えます。
function y = mystruct(x) s.a = 3; if x > 1 s.b = 4; else s.b = 5; end y = zeros(s.a,s.b);
可変サイズが有効の場合、y は可変サイズの配列として扱われます。可変サイズが無効の場合、y について、コード ジェネレーターはエラーを報告します。
y
mxArrays は構造体に代入しない
mxArrays を構造体の要素に代入することはできません。mxArrays を既知の型に変換してからコード生成を行ってください (mxArrays の利用を参照)。
mxArrays
グローバル構造体変数にハンドル クラスまたはスパース配列を代入しない
グローバル構造体変数には、ハンドル オブジェクトまたはスパース配列を含めることができません。
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
ヨーロッパ
アジア太平洋地域
最寄りの営業オフィスへのお問い合わせ