コード生成における datetime 配列の制限事項
コード生成を目的とする MATLAB® コードで datetime
配列を作成する場合は、関数 datetime
を使用して値を指定しなければなりません。日付と時刻を参照してください。
datetime
配列の場合、コード生成では以下の入力および演算はサポートされません。
テキスト入力。たとえば、文字ベクトルを入力引数として指定するとエラーが発生します。
function d = foo() %#codegen d = datetime('2019-12-01'); end
名前と値のペアの引数
'Format'
。関数datetime
の使用やdatetime
配列のFormat
プロパティの設定によって、表示形式を指定することはできません。特定の表示形式を使用するには、MATLAB でdatetime
配列を作成し、コード生成用の関数に入力引数として渡します。名前と値のペアの引数
'TimeZone'
とTimeZone
プロパティ。コード生成用のコードでdatetime
配列を使用する場合は、ゾーンなしでなければなりません。時間成分プロパティの設定。たとえば、次のコードで
Hour
プロパティを設定するとエラーが発生します。d = datetime; d.Hour = 2;
割り当てによる成長。たとえば、配列の末尾を越えて値を割り当てるとエラーが発生します。
function d = foo() %#codegen d = datetime(2019,1:12,1,12,0,0); d(13) = datetime(2020,1,1,12,0,0); end
要素の削除。たとえば、ある要素に空の配列を割り当てるとエラーが発生します。
function d = foo() %#codegen d = datetime(2019,1:12,1,12,0,0); d(1) = []; end
関数
char
、cellstr
またはstring
を使用したdatetime
値のテキストへの変換。
クラスに適用される制限は datetime
配列にも適用されます。詳細については、コード生成のための MATLAB クラスの定義を参照してください。