主要内容

本页翻译不是最新的。点击此处可查看最新英文版本。

定义日期时间数组输入

您可以在命令行或 MATLAB® Coder™ 中定义 datetime 数组输入。代码生成不支持通过使用函数参量验证(arguments 块)或使用预条件(assert 语句)以编程方式指定 datetime 输入类型。

在命令行中定义日期时间数组输入

使用以下过程之一:

或者,如果您有使用示例输入调用入口函数的测试文件,您可以使用 coder.getArgTypes 来确定输入类型。

提供示例日期时间数组输入

使用 -args 选项:

D = datetime(2019,1:12,1,12,0,0);
codegen myFunction -args {D}

提供日期时间数组类型

要将 datetime 数组的类型提供给 codegen,请执行以下操作:

  1. 定义一个 datetime 数组。例如:

    D = datetime(2019,1:12,1,12,0,0);
    

  2. D 创建一个类型。

    t = coder.typeof(D);
    

  3. 通过使用 -args 选项将类型传递给 codegen

    codegen myFunction -args {t}
    

提供常量日期时间数组输入

要指定 datetime 数组输入为常量,请使用 coder.Constant-args 选项:

D = datetime(2019,1:12,1,12,0,0);
codegen myFunction -args {coder.Constant(C)}

MATLAB Coder 中定义日期时间数组输入

使用以下过程之一:

日期时间数组的表示

日期时间数组的代码生成器类型对象描述对象及其属性。使用 coder.typeof 或将 datetime 作为字符串标量传递给 coder.newtype

代码生成器生成类型对象显示对象属性的简洁描述,同时排除内部状态值。非常量属性显示其类型和大小,而常量属性只显示其值。例如:

t = datetime(2019,1:12,1,12,0,0);
tType = coder.typeof(t)

变量 t 的表示存储在代码生成器生成类型对象 tType 中。

tType = 

   matlab.coder.type.DatetimeType
     1x12 datetime
	  Format : 1x0 char
	TimeZone : 1x0 char

如果您的工作流需要代码生成器生成类型对象的旧表示,请对具有您的类或对象的新表示的变量使用 getCoderType 函数。请参阅

使用 coder.resize 调整对象属性的大小

您可以使用 coder.resize 调整大多数对象的大小。您可以调整对象及其属性的大小,并在属性中创建数组。

对于一个 datetime 代码生成器对象,您可以调整对象属性的大小:

t = datetime(2019,1:12,1,12,0,0);
tType = coder.typeof(t)
tType.Format = coder.resize(tType.Format, [1 12])

以下代码将 Format 属性的大小调整为 1x12 char 属性。

tType = 

   matlab.coder.type.DatetimeType
     1x12 datetime
	  Format : 1x12 char
	TimeZone : 1x0 char

您也可以使用 coder.resize 调整对象的大小。请参阅

另请参阅

| | |

主题