代码生成的日期时间数组限制
当您在打算用于代码生成的 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 类定义 (MATLAB Coder)。